2021 CodeEngn Conference 17

Rectangle

날짜: 2021.07.05. ~ 06.  

등록비용: 무료(온라인 개최)

2일간 온라인으로 진행되며, 등록과정 없이 무료로 시청 가능합니다
(홈페이지, 페이스북에 사전녹화된 영상 공지)

주최 & 주관: CodeEngn [코드엔진]  

협찬: (주)NSHC | 한국정보기술연구원 | ENKI  


Download All Slides

Github: 2007 - recent data


딥러닝으로 취약점을 찾아보자

[VulnViz: 취약점 분석의 시각적 접근]

김성우
Facebook: https://facebook.com/cd80cd80

알파고, word2vec, 물리 시뮬레이션. 이 세 가지의 공통점은 모두 지금까지 모든 경우의 수를 계산해야만 했던 문제들을 예측에 기반해 해결하겠다는 시도가 성공한 분야들이다. 취약점 분석도 마찬가지로 많은 자동화 기법들이 연구되어 왔지만, 프로그램 분석을 위해 요구되는 계산 필요량이 매우 높은 수준이다. 알파고가 전체 수를 계산하기보다 수를 놓을만한 지역을 먼저 선별하는 것에 딥러닝을 사용했듯이, 취약점 분석에서도 전체 코드를 분석하지 않고 분석이 필요한 영역을 딥러닝을 통해 선별할 수 있을 것이라는 가설하에 딥러닝 코인에 탑승해본다. 연구 기간이 길지 않은 만큼 해답을 주지는 못하지만, 발표자가 발견한 가능성에 대해 공유한다.



컨테이너에서 버그 찾기 어디까지 해봤니?

[How To Find Container Platform Bug?]

김우석
Facebook: https://facebook.com/se0g1

컨테이너의 사용률이 높아지고, 많은 기업들은 컨테이너를 사용하여 서비스를 제공하고 있습니다. 하지만 발전해가는 컨테이너의 속도만큼 보안은 그 속도를 따라가지 못하고 있습니다. 본 발표는 컨테이너에서 발생할 수 있는 위협들을 찾는 방법론을 제시합니다. 컨테이너 중에서 가장 사용률이 높은 도커와, 오케스트레이션인 쿠버네티스를 타겟으로 하여 Threat Modeling, CodeQL for Go, Introspection Tool을 제작 및 구현하여 찾은 버그들에 대한 설명 및 익스플로잇 과정과 패치 내용들을 발표합니다.



2020 이슈 안드로이드 앱 취약점 분석과 관련 취약점 테스트 앱 개발 과정

[Android App Vulnerability Analysis and Development]

김주원
Facebook: https://facebook.com/lstarrlodyl
GitHub: https://github.com/arrester
Blog: https://blog.naver.com/lstarrlodyl

CODERSERA Kela Casey가 작성한 ‘Top 7 Vulnerabilities In Android Applications 2020’ 내용은 2020년에 이슈화되었던 취약점들을 담고 있다. Top 7 취약점에 해당하는 3가지(사용자 열거, 루팅 탐지 우회, 딥 링크) 취약점을 선별하였다. 본 발표에서는 해당 선별한 취약점 3가지에 대한 개요와 분석 과정과 대응 방안을 공유하고 각 취약점을 테스트해볼 수 있는 애플리케이션 개발 과정과 apk 파일을 공유한다.



원격 제어 애플리케이션 취약점 케이스 스터디

[Case study: Vulnerabilities in Remote Desktop apps]

백정운
Blog: https://alienx.tistory.com

원격 제어 애플리케이션은 여러 강력한 기능들을 많이 포함하고 있기 때문에 한편으로 편리하기도 하지만, 공격자들에게 여러가지 유용한 공격 경로를 제공한다. 최근 공격자들이 원격 제어 애플리케이션을 공격 대상으로 삼는 사례가 증가하고 있으며, Windows RDP에서도 BlueKeep 등 중요도가 높은 취약점들이 발표되었다. 이에 KISA에서도 2019년에 원격 근무에 사용되는 애플리케이션들에 대해서 집중 신고 기간을 운영했다. 본 발표는 2019년에 KISA 버그바운티에 참여하면서 분석했던 국산 원격 제어 애플리케이션에서 발견한 취약점 유형들을 실제 사례와 함께 발표한다.



금융 모바일 악성코드의 현재와 미래

[모바일 악성코드 제작자가 좋아하는 운영체제]

이강석
Facebook: https://facebook.com/CodeEngn

모바일 악성코드는 2012년~2014년도에 폭발적으로 증가하였고, 악성 기능도 스미싱, 인증서∙OTP 탈취, 랜섬웨어 등으로 다양해졌다. 2014년 이후 비용만 지불하면 맞춤형 악성코드 개발∙공격 환경을 제공하는 서비스형 악성코드(MaaS: Malware-as-a-Service) 가 등장하였고, 유포 방식은 인터넷 공유기, 공식마켓 등으로 확대되었으며 공격 기법은 안티바이러스 우회 기능을 적용하는 등 고도화 되었고, 2016년부터는 APT공격 그룹에서 모바일 악성코드를 활용하고, 본격적으로 보이스피싱 등 금융사기에도 사용되는 등 지능화되고 있는 상황이다. 국내외에서 발견된 다양한 모바일 악성코드 샘플 100여개를 대상으로 유포방식, 특성, 유형 등을 분석하고 앞으로 예상되는 위협에 대해 얘기해보고자 한다.



문서형 악성코드를 분석해보자!

[Let’s Analysis Document based Malware!]

이충호
Facebook: https://facebook.com/to2to1717

Github: https://github.com/0utDoorFr0g
Blog: https://fosr.tistory.com

지능형지속공격에서 이메일 첨부파일을 이용해 악성코드를 감염시키는 형태로 많이 활용되는 문서형 악성코드, 아직도 많이 수집되는 문서형 악성코드를 어떻게 분석할 수 있을까요? 본 발표에서 분석 환경 구축과 난독화된 매크로를 사용하는 문서형 악성코드, 취약점을 사용하는 사용하는 문서형 악성코드, 우회 기법을 사용한 악성코드 등을 분석한 내용에 대해서 발표합니다.



Find SW vulnerable via automatic method

[버그 헌팅을 위한 취약점 탐지 자동화]

정재영
Blog: https://jjy-security.tistory.com

사물 인터넷 기기의 대중화, 코로나로 인한 재택 근무 증가 등 다양한 요인으로 인해 사이버 보안 위협이 증가하고 있는 추세이다. 따라서 상용 소프트웨어의 취약점을 찾아 제보하여 사이버 보안 위협을 사전에 방지하는 버그 헌팅의 중요성도 높아지고 있다. 본 발표에서는 상용 프로그램에서 취약점을 찾는 방법에 대해 소개하고, 그 방법을 적용 시킨 결과에 대해서 논의한다. 본 발표에서 소개할 방법으로는 1. Black Box Fuzzing 2. Feedback driven Fuzzing 3. IDA python 4. process monitoring tool이 있다. 이중 Black Box Fuzzing으로 32개의 프로그램에서 총 926개의 크래시를 찾았다. 해당 방식으로 취약점을 찾지 못한 프로그램을 하나 선정하여 Feedback driven Fuzzing을 수행하였는데, 총 7개의 유니크한 취약점을 발견했다. 또한 IDA python을 통해 5 건의 유니크한 취약점을 발견하였고, monitoring tool을 사용해서 17 건의 유니크한 취약점을 발견하였다.



The Art, Science, and Engineering of Windows driver fuzzing

[윈도우 드라이버 퍼징 프레임워크 개발 이야기]

조남준, 권현경
Facebook: https://facebook.com/profile.php?id=100008635065103

Blog: https://kirasys.github.io
Homepage: https://kronl.github.io

Facebook: https://facebook.com/profile.php?id=100052660612645

드라이버는 운영체제와 물리적인 장치가 데이터를 주고받기 위해 사용된다. 이때 운반되는 데이터는 커널의 자원이기 때문에, 드라이버에서 취약점이 발생할 경우 유저 프로그램에서 발생하는 문제보다 훨씬 심각한 문제를 야기한다. 그러나 드라이버는 대부분 타 개발사에서 자체적으로 제공하기때문에 소스코드가 공개되지 않은 윈도우의 특성상 개발사의 적절한 검증이 어렵다. 뿐만 아니라 드라이버의 복잡한 통신 방법과 독창적인 구조때문에 통신 데이터간 순서에 따른 차이가 발생하여 기존의 분석 방법론을 적용할 수 없고, 윈도우 커널의 실행 범위(Coverage)를 측정하거나 초기 입력(Seed)으로 사용할 통신 데이터를 수집하는 것 또한 난제이다. 본 연구에서는 앞선 문제들을 해결하여 효율적인 윈도우 드라이버 취약점 자동 탐지 프레임워크를 개발하였으며, 도구를 통해 상용 드라이버에서 20여개의 버그를 발견하였다.



샌드박스 시대의 종결: AI 에뮬레이터 시대의 도래

[The end of the sandbox era: The advent of the AI emulator era]

최원혁
Facebook: https://facebook.com/hanul93
Twitter: https://twitter.com/hanul93
Github: https://github.com/hanul93
Blog: https://hanul93.com

악성코드의 빠른 분석을 위해 우리는 VM을 이용한 샌드박스 방식을 적극 활용하고 있다. 하지만, 시간이 지남에 따라 악성코드 제작자들은 다양한 샌드박스 우회 방법을 사용하고 있다. 심지어 특정 조건이 삽입된 악성코드는 해당 조건이 만족하지 않을 경우 절대 동작하지 않는다. 아무리 우리가 악성코드 제작자가 심어둔 모든 조건을 만족하는 샌드박스 환경을 만들고 싶지만 이는 불가능한 일이다. 우리의 고민은 여기에서 시작되었다. 이 문제를 해결할 수 있는 간단하면서도 효과가 좋은 방법이 무엇일지를 고민 하였고 에뮬레이터가 정답이라는 사실에 도달하게 되었다. 특히 AI 알고리즘이 적용된 에뮬레이터라면 이 문제를 해결할 수 있다는 확신을 가지게 되었으며 우리가 겪은 과정을 소개하고자 한다.