SlideShare a Scribd company logo
1 of 26
Download to read offline
LCARS000
문제 설명
문제 컨셉트
• MICRO KERNEL
• Pseudo-SELinux
• SYSTEM_APP (LCARS333)
• PLATFORM_APP (LCARS022)
• UNTRUSTED_APP (LCARS000)
주어진 것
ELF 실행 파일(마이크로 커널), 모듈
해당 프로그램이 구동되는 서버 주소
문제 바이너리 분석
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
run / donwload
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
download abcd.sys
shared memory
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
fd
= memfd_create(abcd.sys)
shared memory
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
run abcd.sys
shared memory
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
shared memory
abcd.sys
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
shared memory
abcd.sys
post(‘load’, &abcd.sys, strlen(&abcd.sys))
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
shared memory
abcd.sys
&abcd.sys, strlen(&abcd.sys)
문제의 흐름 (init.sys)
LCARS
(micro kernel)
init.sys
loader.sys
crypto.sys
echo.sys
shared memory
abcd.sys
parse binary & run
문제의 흐름 (loader.sys)
문제의 흐름 (loader.sys)
• SYSTEM_APP
• read / write / close / mmap / mprotect
munmap / writev / recvmsg / prctl
• PLATFORM_APP
• read / write / close / munmap / recvmsg / exit
• UNTRUSTED_APP
• read / write / munmap / exit
문제의 흐름 (crypto.sys) System App Public Key
Platform App Public Key
System APP AES Key
Platform APP AES Key & User key
문제의 흐름 (crypto.sys)
• 라이브러리에 존재하는 문자열을 참고해서 어떤 라이브러리가
static compile되었는지 찾아냄
문제의 흐름 (crypto.sys)
• IDA SIG FLIRT 기능을 이용해 복구를 진행함.
문제의 흐름 (crypto.sys)
문제의 흐름 (crypto.sys)
• MD5
• SHA
• SHA256
• AES Encryption / Decryption
• System APP = root.key
Platform APP = hardcoded key (O * 16)
• RSA Decrypt (For signing)
• 어떤 pubkey를 사용할지 받음
LCARS000
- root.key / flag1.papp / flag1.txt flag2.txt / flag3.txt가 주어지지 않음.
LCARS000
LCARS000 - 풀이
• crypto.sys와 통신하려면shared memory를 사용해야 하기 때문에
shared_memory에 평문 flag가 남아있을 것이라고 추측
LCARS000 - 풀이
• shared memory 출력해주는 쉘코드 작성 (request_no == 0 == print)
LCARS000 - 풀이

More Related Content

What's hot

Why OpenStack is Operating System?
Why OpenStack is Operating System?Why OpenStack is Operating System?
Why OpenStack is Operating System?유명환 FunFun Yoo
 
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져Chulgyu Shin
 
Windows kernel basic exploit
Windows kernel basic exploitWindows kernel basic exploit
Windows kernel basic exploitKyoungseok Yang
 
Clonezilla se
Clonezilla seClonezilla se
Clonezilla se석 허
 
(참고) Elk stack 설치 및 kafka
(참고) Elk stack 설치 및 kafka(참고) Elk stack 설치 및 kafka
(참고) Elk stack 설치 및 kafkaNoahKIM36
 
Docker Casual Talk #2 - Dockerizing newrelic-sysmond
Docker Casual Talk #2 - Dockerizing newrelic-sysmondDocker Casual Talk #2 - Dockerizing newrelic-sysmond
Docker Casual Talk #2 - Dockerizing newrelic-sysmondDaegwon Kim
 
Ch7,8. Configmaps, Secrets and API
Ch7,8. Configmaps, Secrets and APICh7,8. Configmaps, Secrets and API
Ch7,8. Configmaps, Secrets and APIHongmin Park
 
우분투 커널 컴파일
우분투 커널 컴파일우분투 커널 컴파일
우분투 커널 컴파일he4722
 
Net work study
Net work studyNet work study
Net work study경 송
 
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario ChoLinux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario ChoMario Cho
 
Zookeeper 활용 nifi clustering
Zookeeper 활용 nifi clusteringZookeeper 활용 nifi clustering
Zookeeper 활용 nifi clusteringNoahKIM36
 
cross compile
cross compilecross compile
cross compilehe4722
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203doo rip choi
 
노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)
노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)
노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)Ubuntu Korea Community
 
도커없이컨테이너 만들기 8편 - pid namespace
도커없이컨테이너 만들기 8편 - pid namespace도커없이컨테이너 만들기 8편 - pid namespace
도커없이컨테이너 만들기 8편 - pid namespaceSam Kim
 
이것이 리눅스다
이것이 리눅스다이것이 리눅스다
이것이 리눅스다Yeon Tae Kim
 
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714경오 이
 
Wiki academy sysadmin 5_day
Wiki academy sysadmin 5_dayWiki academy sysadmin 5_day
Wiki academy sysadmin 5_dayJo Hoon
 

What's hot (20)

Why OpenStack is Operating System?
Why OpenStack is Operating System?Why OpenStack is Operating System?
Why OpenStack is Operating System?
 
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
 
Windows kernel basic exploit
Windows kernel basic exploitWindows kernel basic exploit
Windows kernel basic exploit
 
Clonezilla se
Clonezilla seClonezilla se
Clonezilla se
 
fengfengfeng
fengfengfengfengfengfeng
fengfengfeng
 
(참고) Elk stack 설치 및 kafka
(참고) Elk stack 설치 및 kafka(참고) Elk stack 설치 및 kafka
(참고) Elk stack 설치 및 kafka
 
1.intro to k8s
1.intro to k8s1.intro to k8s
1.intro to k8s
 
Docker Casual Talk #2 - Dockerizing newrelic-sysmond
Docker Casual Talk #2 - Dockerizing newrelic-sysmondDocker Casual Talk #2 - Dockerizing newrelic-sysmond
Docker Casual Talk #2 - Dockerizing newrelic-sysmond
 
Ch7,8. Configmaps, Secrets and API
Ch7,8. Configmaps, Secrets and APICh7,8. Configmaps, Secrets and API
Ch7,8. Configmaps, Secrets and API
 
우분투 커널 컴파일
우분투 커널 컴파일우분투 커널 컴파일
우분투 커널 컴파일
 
Net work study
Net work studyNet work study
Net work study
 
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario ChoLinux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
 
Zookeeper 활용 nifi clustering
Zookeeper 활용 nifi clusteringZookeeper 활용 nifi clustering
Zookeeper 활용 nifi clustering
 
cross compile
cross compilecross compile
cross compile
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203
 
노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)
노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)
노태상 - 리눅스 커널 개요 및 이슈 아이엠 (2010Y01M30D)
 
도커없이컨테이너 만들기 8편 - pid namespace
도커없이컨테이너 만들기 8편 - pid namespace도커없이컨테이너 만들기 8편 - pid namespace
도커없이컨테이너 만들기 8편 - pid namespace
 
이것이 리눅스다
이것이 리눅스다이것이 리눅스다
이것이 리눅스다
 
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
 
Wiki academy sysadmin 5_day
Wiki academy sysadmin 5_dayWiki academy sysadmin 5_day
Wiki academy sysadmin 5_day
 

Similar to [OpenTRS-001] LCARS000

Linux Kernel 101 for Beginner
Linux Kernel 101 for BeginnerLinux Kernel 101 for Beginner
Linux Kernel 101 for BeginnerInfraEngineer
 
Memory forensics with volatility
Memory forensics with volatilityMemory forensics with volatility
Memory forensics with volatilityYoungjun Chang
 
도커(Docker) 메트릭스 & 로그 수집
도커(Docker) 메트릭스 & 로그 수집도커(Docker) 메트릭스 & 로그 수집
도커(Docker) 메트릭스 & 로그 수집Daegwon Kim
 
광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx
광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx
광안 1반 2팀 엠퀴즈 최종 발표 자료.pptxYeongKiKim1
 
[OpenTRS-001] LCARS022
[OpenTRS-001] LCARS022[OpenTRS-001] LCARS022
[OpenTRS-001] LCARS022Theori
 
KSIA 7th Security Conference Session 2 ( Android Masterkey )
KSIA 7th Security Conference Session 2 ( Android Masterkey )KSIA 7th Security Conference Session 2 ( Android Masterkey )
KSIA 7th Security Conference Session 2 ( Android Masterkey )Namjun Kim
 
DEVIEW 2013 Presentation
DEVIEW 2013 PresentationDEVIEW 2013 Presentation
DEVIEW 2013 PresentationWon Gil Kim
 
[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack CommunityOpen Source Consulting
 
Assembly 스터디 1
Assembly 스터디 1Assembly 스터디 1
Assembly 스터디 1Jinkyoung Kim
 
Lkda facebook seminar_140419
Lkda facebook seminar_140419Lkda facebook seminar_140419
Lkda facebook seminar_140419sprdd
 
[AIX] RDX Device Backup Guide
[AIX] RDX Device Backup Guide[AIX] RDX Device Backup Guide
[AIX] RDX Device Backup GuideCheolHee Han
 
[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담
[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담
[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담Sumin Byeon
 
망고100 보드로 놀아보자 12
망고100 보드로 놀아보자  12망고100 보드로 놀아보자  12
망고100 보드로 놀아보자 12종인 전
 
(120128) #fitalk sql server anti-forensics
(120128) #fitalk   sql server anti-forensics(120128) #fitalk   sql server anti-forensics
(120128) #fitalk sql server anti-forensicsINSIGHT FORENSIC
 
Oracle solaris comstar introduce and configuration ppt sukkim
Oracle solaris comstar introduce and configuration ppt sukkimOracle solaris comstar introduce and configuration ppt sukkim
Oracle solaris comstar introduce and configuration ppt sukkimsuk kim
 
(130511) #fitalk utilization of ioc, ioaf and sig base
(130511) #fitalk   utilization of ioc, ioaf and sig base(130511) #fitalk   utilization of ioc, ioaf and sig base
(130511) #fitalk utilization of ioc, ioaf and sig baseINSIGHT FORENSIC
 
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017Amazon Web Services Korea
 
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"리얼리눅스
 

Similar to [OpenTRS-001] LCARS000 (20)

Linux Kernel 101 for Beginner
Linux Kernel 101 for BeginnerLinux Kernel 101 for Beginner
Linux Kernel 101 for Beginner
 
Memory forensics with volatility
Memory forensics with volatilityMemory forensics with volatility
Memory forensics with volatility
 
도커(Docker) 메트릭스 & 로그 수집
도커(Docker) 메트릭스 & 로그 수집도커(Docker) 메트릭스 & 로그 수집
도커(Docker) 메트릭스 & 로그 수집
 
광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx
광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx
광안 1반 2팀 엠퀴즈 최종 발표 자료.pptx
 
[OpenTRS-001] LCARS022
[OpenTRS-001] LCARS022[OpenTRS-001] LCARS022
[OpenTRS-001] LCARS022
 
KSIA 7th Security Conference Session 2 ( Android Masterkey )
KSIA 7th Security Conference Session 2 ( Android Masterkey )KSIA 7th Security Conference Session 2 ( Android Masterkey )
KSIA 7th Security Conference Session 2 ( Android Masterkey )
 
DEVIEW 2013 Presentation
DEVIEW 2013 PresentationDEVIEW 2013 Presentation
DEVIEW 2013 Presentation
 
[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community
 
Assembly 스터디 1
Assembly 스터디 1Assembly 스터디 1
Assembly 스터디 1
 
Lkda facebook seminar_140419
Lkda facebook seminar_140419Lkda facebook seminar_140419
Lkda facebook seminar_140419
 
[AIX] RDX Device Backup Guide
[AIX] RDX Device Backup Guide[AIX] RDX Device Backup Guide
[AIX] RDX Device Backup Guide
 
[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담
[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담
[야생의 땅: 듀랑고]의 식물 생태계를 담당하는 21세기 정원사의 OpenCL 경험담
 
망고100 보드로 놀아보자 12
망고100 보드로 놀아보자  12망고100 보드로 놀아보자  12
망고100 보드로 놀아보자 12
 
(120128) #fitalk sql server anti-forensics
(120128) #fitalk   sql server anti-forensics(120128) #fitalk   sql server anti-forensics
(120128) #fitalk sql server anti-forensics
 
Oracle solaris comstar introduce and configuration ppt sukkim
Oracle solaris comstar introduce and configuration ppt sukkimOracle solaris comstar introduce and configuration ppt sukkim
Oracle solaris comstar introduce and configuration ppt sukkim
 
(130511) #fitalk utilization of ioc, ioaf and sig base
(130511) #fitalk   utilization of ioc, ioaf and sig base(130511) #fitalk   utilization of ioc, ioaf and sig base
(130511) #fitalk utilization of ioc, ioaf and sig base
 
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
 
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
 
Kafka slideshare
Kafka   slideshareKafka   slideshare
Kafka slideshare
 
AWS DevDay 실습 가이드 - 콘테이너
AWS DevDay 실습 가이드 - 콘테이너AWS DevDay 실습 가이드 - 콘테이너
AWS DevDay 실습 가이드 - 콘테이너
 

More from Theori

[OpenTRS-001] Vitor
[OpenTRS-001] Vitor[OpenTRS-001] Vitor
[OpenTRS-001] VitorTheori
 
[OpenTRS-001] RTOoOS
[OpenTRS-001] RTOoOS[OpenTRS-001] RTOoOS
[OpenTRS-001] RTOoOSTheori
 
[OpenTRS-001] Keynote
[OpenTRS-001] Keynote[OpenTRS-001] Keynote
[OpenTRS-001] KeynoteTheori
 
[OpenTRS-001] Hotel California
[OpenTRS-001] Hotel California[OpenTRS-001] Hotel California
[OpenTRS-001] Hotel CaliforniaTheori
 
[OpenTRS-001] election_coin
[OpenTRS-001] election_coin[OpenTRS-001] election_coin
[OpenTRS-001] election_coinTheori
 
[OpenTRS-001] ooops
[OpenTRS-001] ooops[OpenTRS-001] ooops
[OpenTRS-001] ooopsTheori
 
[OpenTRS-001] ASRybaB
[OpenTRS-001] ASRybaB[OpenTRS-001] ASRybaB
[OpenTRS-001] ASRybaBTheori
 

More from Theori (7)

[OpenTRS-001] Vitor
[OpenTRS-001] Vitor[OpenTRS-001] Vitor
[OpenTRS-001] Vitor
 
[OpenTRS-001] RTOoOS
[OpenTRS-001] RTOoOS[OpenTRS-001] RTOoOS
[OpenTRS-001] RTOoOS
 
[OpenTRS-001] Keynote
[OpenTRS-001] Keynote[OpenTRS-001] Keynote
[OpenTRS-001] Keynote
 
[OpenTRS-001] Hotel California
[OpenTRS-001] Hotel California[OpenTRS-001] Hotel California
[OpenTRS-001] Hotel California
 
[OpenTRS-001] election_coin
[OpenTRS-001] election_coin[OpenTRS-001] election_coin
[OpenTRS-001] election_coin
 
[OpenTRS-001] ooops
[OpenTRS-001] ooops[OpenTRS-001] ooops
[OpenTRS-001] ooops
 
[OpenTRS-001] ASRybaB
[OpenTRS-001] ASRybaB[OpenTRS-001] ASRybaB
[OpenTRS-001] ASRybaB
 

[OpenTRS-001] LCARS000