Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[SOOHO] Luniverse Partners Day

D28f2e4d0a276d9c6c6cd04e7e188fd8?s=47 SOOHO
October 23, 2018

[SOOHO] Luniverse Partners Day

취약점과 익스플로잇이 무엇인지 배우고 현재의 스마트 컨트랙 보안 현황에 대해 알아봅니다.
개발자들은 지금처럼 취약한 상황에서 어떠한 도구들을 활용할 수 있는지 살펴보고,
수호에서 제공하는 취약점 분석 엔진과 기술들에 대해서 알아봅니다.

D28f2e4d0a276d9c6c6cd04e7e188fd8?s=128

SOOHO

October 23, 2018
Tweet

Transcript

  1. ѐߊ੗ܳਤೠ ஂড੼੗ز࠙ࢳࢲ࠺झ +JTV1BSL KJTVQBSL!TPPIPJP

  2. !2 1. 배경 소개 2. 취약점 현황 3. 개발자를 위한

    취약점 분석 도구 4. Sooho의 기술: Detector, Verifier, Fuzzer, Classifier 5. 수호의 기술 비교 6. 수호의 Verification-as-a-Service 7. 질의응답 다루는 내용 0TABLE OF CONTENTS
  3. ஂড੼(VULNERABILITY) 임의의 공격자가 허락받지 않은 기능을 수행할 수 있게 하는

    프로그램 상의 약점 ੊झ೒۽੒(EXPLOIT) 임의의 공격자가 취약점을 통해 허락받지 않은 기능을 수행하는 것 VS !3 1VULNERABILITY & EXPLOIT 취약점과 익스플로잇
  4. •알려진 취약점 혹은 익스플로잇에 대한 취급 방법 을 정규화하기 위해

    •소프트웨어 취약점을 무료로 열람할 수 있게 해 보 안 수준을 높이기 위해 CVE-YYYY-NNNN (CVE-YEAR-NUMBER) !4 1CVE Common Vulnerabilities and Exposures란? #BUDI0WFSGMPXWVMOFSBCJMJUZ
  5. •알려진 취약점 혹은 익스플로잇에 대한 취급 방법 을 정규화하기 위해

    •소프트웨어 취약점을 무료로 열람할 수 있게 해 보 안 수준을 높이기 위해 CVE-YYYY-NNNN (CVE-YEAR-NUMBER) !5 1CVE Common Vulnerabilities and Exposures란? #BUDI0WFSGMPXWVMOFSBCJMJUZ
  6. &UIFSFVN#PVOUZ1SPHSBN !6 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트

    보안 위협 상황
  7. ETHEREUM P2P NETWORK NODE NODE NODE NODE NODE REMIX IDE

    CONTRACT DEPLOY MIST BROWSER MYETHERWALLET !7 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  8. ETHEREUM P2P NETWORK NODE NODE NODE NODE NODE REMIX IDE

    CONTRACT DEPLOY MIST BROWSER MYETHERWALLET !8 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  9. ETHEREUM P2P NETWORK NODE NODE NODE NODE NODE REMIX IDE

    CONTRACT DEPLOY MIST BROWSER MYETHERWALLET !9 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  10. ETHEREUM P2P NETWORK NODE NODE NODE NODE NODE REMIX IDE

    CONTRACT DEPLOY MIST BROWSER MYETHERWALLET !10 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  11. ETHEREUM P2P NETWORK NODE NODE NODE NODE NODE REMIX IDE

    CONTRACT DEPLOY MIST BROWSER MYETHERWALLET !11 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  12. ETHEREUM P2P NETWORK NODE NODE NODE NODE NODE REMIX IDE

    CONTRACT DEPLOY MIST BROWSER MYETHERWALLET !12 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  13. 1SPQPSUJPOPGUIFWVMOFSBCMF DPOUSBDUTJO&UIFSFVN 5% 95% Vulnerable Contract Benign Contract ref. ZEUS(NDSS’18)

    !13 2SECURITY THREAT TREND 이더리움 플랫폼 및 스마트 컨트랙트 보안 위협 상황
  14. 2017 2018 Jun Jul Aug Sep Oct Nov Dec Jan

    Feb Mar Apr May Jun Jul Aug Sep Oct Parity Multi-sig 2 11/06/‘17 SmartBillions 10/05/‘17 07/13/‘17 Augur Rep Token पઁ ࢎਊ ࢲ࠺झীࢲب ஂড੼ਸ ֈয ੊झ೒۽੒੉ ߊࢤೞҊ ੓׮ Parity Multi-sig 07/19/‘17 FoMo3D Airdrop 07/24/‘18 !14 2TIMELINE OF EXPLOITS 실제 해킹 사례 SpankChain 10/06/‘18 Batch/Proxy Overflow 04/22/‘18
  15. ࠶۾୓ੋ द੢ীࢲ ࠁউ਷ ࢶఖ੉ ইצ ೙ࣻ !15

  16. !16 3SECURITY TOOLS FOR DEV 개발자를 위한 취약점 분석 도구

    5FTUJOH5PPM 4UBUJD%ZOBNJD"OBMZ[FS 7FSJGJFS #VHGJOEJOHT 7FSJGJDBUJPOT
  17. !17 3SECURITY TOOLS FOR DEV 개발자를 위한 취약점 분석 도구

    5FTUJOH5PPM 4UBUJD%ZOBNJD"OBMZ[FS 7FSJGJFS #VHGJOEJOHT 7FSJGJDBUJPOT 0:&/5&
  18. !18 3SECURITY TOOLS FOR DEV 개발자를 위한 취약점 분석 도구

    5FTUJOH5PPM 4UBUJD%ZOBNJD"OBMZ[FS 7FSJGJFS #VHGJOEJOHT 7FSJGJDBUJPOT 정확도가 높음 버그가 남을 수 있음 정확도가 높음 버그가 남을 수 있음 버그를 잘못 찾을 수 있음 버그를 다 찾음
  19. !19 3SECURITY TOOLS FOR DEV 개발자를 위한 취약점 분석 도구

    5FTUJOH5PPM 4UBUJD%ZOBNJD"OBMZ[FS 7FSJGJFS #VHGJOEJOHT 7FSJGJDBUJPOT 익스플로잇이 안될 수 있음 익스플로잇이 안될 수 있음 익스플로잇이 안될 수 있음
  20. بҳо ઓ੤ೣীب ࠛҳೞҊ ૑Ә୊ۢ ஂডೠ ੉ਬח? !20

  21. !21 3SECURITY TOOLS FOR DEV 개발자를 위한 취약점 분석 도구

    •전문성 한계 (예: 결과 확인/해석을 위해 보안 전문 지식 필요) •시간적 한계 (예: 분석하는 동안 일정 상 기능 개발은 진행되야 함) •비용적 한계 (예: 전문가 고용에 필요한 지출이 상당함) •정책적 한계 (예: 크립토키티의 유전 알고리즘 컨트랙트)
  22. !22 4SOOHO TECHNOLOGY OVERVIEW Sooho의 기술 개요 •전문성 한계 (예:

    결과 확인/해석을 위해 보안 전문 지식 필요) •시간적 한계 (예: 분석하는 동안 일정 상 기능 개발은 진행되야 함) •비용적 한계 (예: 전문가 고용에 필요한 지출이 상당함) •정책적 한계 (예: 크립토키티의 유전 알고리즘 컨트랙트) => Verification-as-a-Service => 보다 빠른 탐지 기법 연구 => 자동화 도구 개발 => Code Privacy 기법 연구
  23. !23 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기 취약점 전파의 주요 원인 중 하나 1. ৮੹ ௏٘ ੤ࢎਊ • ѐߊ द੼ীࢲ੄ ੤ࢎਊ • ஹ౵ੌ द੼ীࢲ੄ ੤ࢎਊ 2. ࠗ࠙ ௏٘ ੤ࢎਊ • ೐۽ં౟ ನ௼ • ࠂࢎ & ࠢৈ֍ӝ         ৘: ੹ా੸ੋ ࣗ೐౟ਝযীࢲ੄ ௏٘ ੤ࢎਊ
  24. !24 Package Dependency External Contract Reference ݅ড ੉ ௏٘о ஂড੼ਸ

    о૑Ҋ ੓׮ݶ? 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약 코드 클론 탐지기 (1) ৮੹ ੤ࢎਊ
  25. !25 48% forks from ৘: ੹ా੸ੋ ࣗ೐౟ਝযীࢲ੄ ೐۽ં౟ ನ௼ ݅ড

    ੉ ௏٘о ஂড੼ਸ о૑Ҋ ੓׮ݶ? 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약 코드 클론 탐지기 (2) ࠗ࠙ ੤ࢎਊ Search Copy & Paste ৘: ஶ౟ۑ౟ ࠂࢎ & ࠢৈ֍ӝ
  26. !26 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기 Patch File Vulnerable Code Vulnerable DB Target File Candidate Code Search Extract Abstract Normalize Extract (S&P ’17)
  27. !27 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기
  28. !28 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기
  29. !29 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기 [Function] {"startLine":23,"endLine":33} 93f2f1beee5f9817ee966682835dcf3b Encrypted.aegis
  30. !30 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기 ৈ੹൤ ஂডೠ ௏٘ ఐ૑о оמ
  31. !31 4SOOHO TECHNOLOGY: VULNERABLE CODE CLONE DETECTOR Sooho의 기술: 취약

    코드 클론 탐지기 ҳ୓੸ੋ ஂড੼ ೧Ѿ ߑߨਸ ઁद
  32. !32 4SOOHO TECHNOLOGY: VERIFIER, FUZZER Sooho의 기술: Verifier, Fuzzer 1.

    Numerical Property Verifier (18.4Q 예정) •Integer Overflow/Underflow 특화 검증기 •특징 •현재 유일한 Verifier (비공개 툴 제외) •기존 Analyzer들의 FP/FN Rate를 줄임 2. Smart Contract Fuzzer (19.1Q 예정) •실행을 통해 Exploitability 검증 False Positive Case
  33. !33 4SOOHO TECHNOLOGY: Classifier Sooho의 기술: Classifier 3. Mal Address

    Classifier (18.4Q 예정) •악성 Address 1,500 여개 •정상 Address 8,500 여개 •현재 Cross-validation 10 Fold 기준 85%의 성능 ೧ழীѱ ࣠Әೞח Ѥ ইקө?
  34. !34 5COMPARISONS 기술 비교 ࣻز ࠙ࢳ O O O O

    O O ੗زച ࠙ࢳ O X X O O ߈੗ز ಁ஖ ౵ੌ O X X X X X ӝઓ ѐߊ
 ೐۽ࣁझ োز O X X X X X Solidified OpenZeppelin SmartDec Quantstamp Certik Sooho
  35. !35 6Verification-as-a-Service 수호의 VaaS Verification-as-a-Service - Automated Security Assessment Service

    - Advanced Security Assessment Service - https://sooho.io 박지수 대표 - 고려대 SW 보안 이희조 교수 - 고려대 SW 보안 오학주 교수 - 고려대 SW 분석
  36. Design Code/Test Commit Setup Deploy Code Review QA/Integration CONTINOUS DELIVERY

    !36 6Verification-as-a-Service 수호의 VaaS
  37. Design Code/Test Commit Setup Deploy SECURITY ASSESSMENT Code Review QA/Integration

    CONTINOUS DELIVERY !37 6Verification-as-a-Service 수호의 VaaS CLONE DETECTOR FUZZER VERI-SMART-BENCH
  38. !38 .SOL AEGIS INPUT/OUTPUT REQ. ANALYZE RES. REPORT . .

    . VUL CLONE DETECTOR ARITHMETIC VERIFIER VERIFIER & REPORTER . . . EXTERNAL
 SERVICE Automated Security Assessment 6Verification-as-a-Service 수호의 VaaS
  39. Write Code Pull Request Review Merge CASE #1. Automated Security

    Assessment in GitHub 1. Automated Code Review 2. Auto-generated Report !39 6Verification-as-a-Service 수호의 VaaS
  40. !40 6Verification-as-a-Service 수호의 VaaS Write Code Review CASE #2. Automated

    Security Assessment in Luniverse 1. Various Inputs 2. Auto-generated Report
  41. Global Capture The Flag Penetration Testing Manual Security Assessment and

    Consulting By Security Experts Security Audit !41 6Verification-as-a-Service 수호의 VaaS
  42. ஂড੼ ࠙ࢳ ߂ ౵౟ցऔ ޙ੄ (contact@sooho.io) !42 7Q&A 질의응답