⛏️ 삽시일반

오픈소스에서 취약점을 찾아보자 (via AFL++)

오늘 구독자님에게 소개드릴 내용은 취약점을 자동으로 찾아주는 Fuzzer인 AFL++과 오픈소스의 취약점을 하나 준비했습니다. 개발자와 보안 엔지니어 모두에게 흥미로울 수 있을듯합니다. 🫡

2024.03.30 | 조회 239 |
0
|

Hello.Stranger

출근길에 읽을 수 있도록 매일 아침에 개발 및 IT 소식을 전해드립니다. 🛸

오늘 구독자님에게 소개드릴 내용은 취약점을 자동으로 찾아주는 Fuzzer인 AFL++과 오픈소스의 취약점을 하나 준비했습니다. 개발자와 보안 엔지니어 모두에게 흥미로울 수 있을듯합니다. 🫡

1. 오픈 소스 취약점에 대한 흥미

오픈 소스에서 취약점을 찾는 것에 흥미가 있었는데요. 그 당시 처음으로 접하게 된 프로젝트는 구글의 OSS-Fuzz라는 프로젝트였습니다. 이 프로젝트는 1000개 이상의 오픈 소스를 Fuzzer와 연동할 수 있게하는 프로젝트인데, 현재까지는 AFL, libfuzzer, hongfuzzer 를 붙일 수 있으며, 각 프로젝트의 fuzzer들은 각각의 프로젝트 github 소스코드에 녹아져있습니다. (보통 각 프로젝트 repo에서 tests/fuzz/디렉토리 하위에 위치함)

 

2. AFL++ 이란

이렇게 오픈 소스 Fuzzing에 관심을 갖게 되고 AFLPlusPlus라는 프로젝트를 접하게 되었습니다. 이전에는 libfuzzer로 Fuzzer 작성하는 방법을 공부하고 컴파일 및 실행하는 방법에 대해서만 보았었는데, 이 사이트를 보고 AFL++를 써봐야겠다고 마음이 바뀌더라구요. 아래의 이미지를 보면 알겠지만 AFLPlusPlus의 Coverage(무작위로 입력한 값이 소스코드의 어드 로직까지 뻗어가는지 커버할 수 있는 범위) 가장 높은 그래프를 기록하고 있습니다. 물론 libfuzzer와는 미비한 차이인듯 하지만, 저 미비한 차이가 좀 더 다른 결과를 가져다주지 않을까하는 기대감이 있었습니다.

그래프로 본 Reched code coverage
그래프로 본 Reched code coverage

3. AFL++로 취약점을 찾기 위한 대상 선정

ALL++를 처음 사용하보는 단계에서 Tutorial 이 필요합니다. 그러던 중 ...

 

멤버십 구독자만 읽을 수 있어요

가입하시려면 아래를 클릭해주세요

댓글

의견을 남겨주세요

확인
의견이 있으신가요? 제일 먼저 댓글을 달아보세요 !

© 2024 Hello.Stranger

출근길에 읽을 수 있도록 매일 아침에 개발 및 IT 소식을 전해드립니다. 🛸

뉴스레터 문의 : hello.stranger1337@gmail.com

자주 묻는 질문 오류 및 기능 관련 제보

서비스 이용 문의admin@team.maily.so

메일리 (대표자: 이한결) | 사업자번호: 717-47-00705 | 서울 서초구 강남대로53길 8, 8층 11-7호

이용약관 | 개인정보처리방침 | 정기결제 이용약관