퍼징 101
-
제목: Fuzzing 101
-
내용 요약:
-
코스 소개: 진정한 전문가처럼 퍼즈 테스트를 배우고 싶은 사람들을 위한 코스.
-
구조:
- 총 10개의 실제 타겟과 10개의 연습 문제.
- 각 연습 문제는 타겟, 발견해야 할 CVE, 예상 시간, 주요 주제로 구성.
-
연습 문제:
- 연습 1: Xpdf, CVE-2019-13288, 120분, Afl-clang-fast, Afl-fuzz, GDB
- 연습 2: libexif, CVE-2009-3895, CVE-2012-2836, 6시간, Afl-clang-lto, Fuzz libraries, Eclipse IDE
- 연습 3: TCPdump, CVE-2017-13028, 4시간, ASan, Sanitizers
- 연습 4: LibTIFF, CVE-2016-9297, 3시간, 코드 커버리지, LCOV
- 연습 5: Libxml2, CVE-2017-9048, 3시간, 딕셔너리, 기초 병렬화, 명령줄 인자 퍼징
- 연습 6: GIMP, CVE-2016-4994 및 추가 버그, 7시간, 지속적 퍼징, 상호작용 애플리케이션 퍼징
- 연습 7: VLC 미디어 플레이어, CVE-2019-14776, 6시간, 부분 계측, 퍼징 하네스
- 연습 8: Adobe Reader, 8시간, 폐쇄형 소스 애플리케이션 퍼징, QEMU 계측
- 연습 9: 7-Zip, CVE-2016-2334, 8시간, WinAFL, 윈도우 애플리케이션 퍼징
- 연습 10 (최종 도전): Google Chrome / V8, CVE-2019-5847, 8시간, Fuzzilli, 자바스크립트 엔진 퍼징
-
변경 기록:
- 2022/02/14: 연습 5의 'wget' 오타 수정
- 2021/11/25: 연습 3 수정 사항 업데이트
-
대상자: 퍼즈 테스트 기초를 배우고 싶은 사람, 실제 소프트웨어 프로젝트에서 취약점을 찾고 싶은 사람.
-
요구사항:
- 인터넷 연결이 가능한 리눅스 시스템 필요.
- 기본적인 리눅스 기술 권장.
- 연습 문제는 Ubuntu 20.04.2 LTS에서 테스트됨.
- AFL++ 사용.
-
퍼징이란?:
- 자동화된 소프트웨어 테스트 기법.
- 임의/변형된 입력 값을 프로그램에 보내 예외/크래시를 모니터링.
- AFL, libFuzzer, HonggFuzz는 실제 애플리케이션에서 성공적인 퍼저.
-
감사: 여러 기여자 및 지원자에 대한 감사.
-
연락처: GitHub Security Lab Slack의 #fuzzing 채널 참여하여 도움 요청 및 피드백 제공 가능.
-
4github.com링크 복사하기
AI 뉴스 요약은 뉴스의 내용을 AI가 요약(GPT-4 활용)한 것입니다. 따라서 틀린 내용을 포함할 수 있습니다. 뉴스의 자세한 내용을 확인하시려면 해당 뉴스 링크를 클릭해주세요.