# fuzzing

[Fuzzing] Mutation-Based Fuzzing
참고 Link: https://www.fuzzingbook.org/html/MutationFuzzer.html 
[책] fuzzingbook
fuzzingbook sitemap > webpage: https://www.fuzzingbook.org/html/00Tableof_Contents.html git: https://github.com/uds-se/fuzzingbook/ Table of Contents Part I: Whetting Your Appetite Tours through the Book Introduction to Software Testing Part II: Lexical Fuzzing Fuzzing: Breaking Things with Random Inputs Code Coverage Mutation-Based Fuzzing Greybox Fuzzing Search-Based Fuzzing Mut

[PPT 발표 자료] Mutation-Based Fuzzing
Mutation-Based Fuzzing은 소프트웨어의 버그를 찾는 데 사용되는 자동화된 테스트 방법입니다. 이 방법은 소프트웨어의 코드를 무작위로 변경하여 버그를 유발할 수 있는 조건을 찾습니다. Mutation-Based Fuzzing은 매우 효과적인 테스트 방법입니다. 
[Fuzzing101] 연습1 - xpdf
소프트웨어 퍼징에 대한 개념을 이해하고 다양한 라이브러리 사용에 익숙해지기 위하여 Fuzzing101의 1번 연습 문제를 진행한다. 1번 문제는 xpdf를 대상으로 퍼징을 진행한다. xpdf 3.02 버전에는 CVE-2019-13288가 존재한다. 해당 취약점은 PDF 파싱 과정에서 특정 함수에 무한 재귀를 유발하여 DoS를 일으킬 수 있는 취약점이다. <img src="https://velog.velcdn.com/images/jjs9366/p
QSYM: A Practical Concolic Execution Engine Tailored for Hybrid Fuzzing
Background What is Fuzzing? You know back in the day they used punched cards to store data? In the 1950's programmers would pick out a random punched card and put it in to see if the program reveals some bugs. Now this has nothing to do with Fuzzing but the idea is quite similar. Now if we give a random input to a program it could reveal undesired behavior. Now fuzzing give programs random inputs observe behavior. So what does this mean? Well for starters if a bug is found it shoul
Testing Web Applications
Testing Web Applications 목차 Synopsis Fuzzing Web Forms SQL Injection Attacks A Web User Interface Excursion: Implementing a Web Server Running the Server Interacting with the Server Fuzzing Input Forms Fuzzing with Expected Values Fuzzing with Unexpected Values Extracting Grammars for Input Forms Searching HTML for Input Fie
Efficient Grammar Fuzzing
Efficient Grammar Fuzzing 목차 Synopsis Efficient Grammar Fuzzing Derivation Trees An Insufficient Algorithm Derivation Trees Representing Derivation Trees Expanding a Node Picking a Children Alternative to be Expanded Getting a List of Possible Expansions Putting Things Together Expanding a Tree Closing the Expansion Excursion: Implementing Cost Functions End of Excursion Node Inflation Three Expansion Phases Putting
Fuzzing with Grammars
Fuzzing with Grammars 목차 Synopsis Input Languages Grammars Rules and Expansions Arithmetic Expressions Representing Grammars in Python Some Definitions A Simple Grammar Fuzzer Visualizing Grammars as Railroad Diagrams [Some G
Tours through the Book
정리 예정 챕터 Introduction to software testing Fuzzing: Breaking Things with Random Inputs Code Coverage [Mutation-Based Fuzzing](https://velog.io/@silvergun8291/Mutatio
Fuzzing: Breaking Things with Random Inputs
Fuzzing: Breaking Things with Random Inputs 목차 Synopsis A Testing Assignment A Simple Fuzzer Fuzzing External Programs Creating Input Files Invoking External Programs Long-Running Fuzzing Bugs Fuzzers Find Buffer Overflows [Missing Error Che
Introduction to Software Testing
Introduction to Software Testing 목차 Simple Testing Running a Fucntion Debugging a Function Checking a Function Automating Test Execution Generating Tests Run-Time verification System Input vs Function Input The Limits of Testing

[SW 테스팅 스터디] Fuzzing의 기본 개념
1. 서론 많은 소프트웨어 취약성 검출 기술 중에 Fuzzing은 개념의 단순성, 낮은 도입 장벽, 실제 소프트웨어에서 높은 효율을 보여 많은 인기를 끌고 있습니다. High level에서의 Fuzzing은 구문적으로나 의미적으로 문제를 일으킬 수 있는 입력값을 프로그램에 반복적으로 실행하는 과정입니다. 공격자는 공격 생성 및 침투 테스트와 같은 시나리오에 퍼징 기법을 사용했으며, 이러한 악성행동을 막기 위한 방어자들 또한, 공격자보다 먼저 취약성을 발견하기 위해 퍼징 기법을 도입하기 시작했습니다. Adobe, Google, Microsoft와 같은 기업들은 모두 보안 개발 관행의 일부로 퍼징 기법을 사용하고 있으며, 최근에는 오픈소스 개발자 또한 소프트웨어의 신뢰성을 보장하기 위해 퍼징 기법을 사용하고 있습니다. 이에 따라 주요 보안 컨퍼런스에서도 퍼징 기법에 관한 연구도 활발하게 이루어지고 있습니다. 2. Fuzzing의 기원 Fuzzing이라는

[Literature Survey] Semantic Bug Seeding: A Learning-based Approach for Creating Realistic Bugs
본 게시물은 Semantic Bug Seeding: A Learning-based Approach for Creating Realistic Bugs를 읽고 정리한 내용입니다. 1. Background 버그 시딩의 목적 > - Evaluate bug detectors > - Evaluate mutation testing > - Train learning-based bug detectors 버그 탐지(bug detection)나 버그 수정(bug fixing), 버그 예방(bug prevention) 등에 버그 시딩(bug seeding)이 사용될 수 있습니다. 이는 버그 관련 도구를 비교 및 평가하는 데에 사용되는 벤치마크로 사용되며 이 경우에는 현실적인 버그(realistic bug)의 정확한 위치 정보가 필요합니다. 다음

[후기] fuzzer로 첫 오픈소스 이슈 기여
2020. 9. 28에 쓴 글 이번학기 공프기(공학 프로젝트기획)에서 AFL fuzz라는 gray box testing tool을 사용하고 있다. AFL github 근데 왜 gray box라고 하냐면 target program의 source code를 coverage 분석 용도로만 쓰기 때문에 white box testing과 black box testing의 중간정도

Bug Hunter Handbook
Bug Hunter Handbook Checklists / Guides Vulnerabilities API Security Mobile Security Fuzzing/Wordlists Bug Bounty Burp Suite Tips and Tricks ...