728x90
반응형

퍼징 3

libFuzzer

개요libFuzzer는 LLVM 프로젝트에 포함된 퍼징(fuzzing) 프레임워크로, 인프로세스(in-process) 방식으로 대상 함수를 반복 호출하며 입력 데이터를 퍼징함으로써 잠재적인 충돌, 취약점, 예외 상황 등을 발견한다. 특히 클로즈드 루프 방식으로 코드 커버리지를 최대화하며, 정적 분석과 연계가 용이하다.1. 개념 및 정의 항목 정의LLVM에서 제공하는 클로즈드 루프 기반의 인프로세스 퍼징 프레임워크목적소프트웨어의 취약점 및 예외 상황 자동 탐지필요성수동 테스트 한계를 극복하고 보안·안정성 확보를 자동화libFuzzer는 C/C++ 코드 테스트에 특히 최적화되어 있다.2. 특징특징설명비교In-Process Fuzzing대상 함수 내에서 직접 호출 및 실행 반복AFL은 fork 기반 외부 실..

Topic 2026.01.09

AFL++

개요AFL++(American Fuzzy Lop Plus Plus)는 오리지널 AFL의 한계를 극복하고 다양한 최신 퍼징 기술을 통합한 고성능 오픈소스 퍼저(fuzzer)이다. 소프트웨어의 취약점을 자동으로 탐지하는 데 사용되며, 특히 보안 테스트, 품질 향상, 코드 검증을 위한 동적 퍼징 환경에 최적화되어 있다.1. 개념 및 정의 항목 설명 정의다양한 퍼징 엔진, 인스트루멘테이션, 테스트 전략을 통합한 진화형 퍼저목적코드 커버리지를 극대화하고 취약점 탐지를 자동화필요성최신 복잡한 코드에 대한 더 정밀하고 효과적인 퍼징 요구AFL++는 LLVM, QEMU, Unicorn 등 다양한 백엔드와 호환된다.2. 특징특징설명비교Mutator 확장성다양한 입력 변형 알고리즘 내장AFL 대비 탐색 효율 ↑다중 퍼징..

Topic 2026.01.09

퍼징(Fuzzing)

개요퍼징(Fuzzing)은 프로그램의 입력값에 예상치 못한, 무작위 또는 비정상적인 데이터를 자동으로 생성하여 주입함으로써 취약점이나 오류를 탐지하는 보안 중심의 동적 테스팅 기법입니다. 입력 검증이 미흡한 프로그램은 퍼징을 통해 충돌(crash), 무한 루프, 메모리 오류, DoS 등의 문제를 유발할 수 있으며, 최근에는 AI 기반의 지능형 퍼저와 함께 DevSecOps 파이프라인에서도 활발히 활용되고 있습니다. 이 글에서는 퍼징의 개념, 종류, 핵심 기술, 도구, 적용 사례를 정리합니다.1. 개념 및 정의퍼징은 테스트 대상 소프트웨어 또는 시스템에 대하여 의도적으로 잘못된 또는 예외적인 입력값을 대량으로 자동 생성하고 투입하여, 프로그램의 이상 동작을 관찰하는 테스트 방법입니다.주요 목표는 다음과 같..

Topic 2025.03.27
728x90
반응형