22C3 - 2.2
22nd Chaos Communication Congress
Private Investigations
Speakers | |
---|---|
Ilja |
Schedule | |
---|---|
Day | 3 |
Room | Saal 2 |
Start time | 16:00 |
Duration | 02:00 |
Info | |
ID | 537 |
Event type | Lecture |
Track | Hacking |
Language | English |
Feedback | |
---|---|
Did you attend this event? Give Feedback |
Fuzzing
Breaking software in an automated fashion
Fuzzing is the art of automatic bug finding. This is done by providing applications with somewhat broken to really broken input. During my talk I'll give an overview of current fuzzers and how to build your own.
In this talk fuzzing will be explained. Fuzzing is the art of providing an application with a lot of different and mostly broken input. The input should in most cases be good enough so applications will assume it's valid input, but at the same time be broken enough so that parsing done on this input will fail. Such failing can lead to unexpected results such as crashes, information leaks, delays, ...
In order to decently fuzz a given application tools are needed. Some are better then others and a variaty of fuzzing tools will be covered in this lecture. Some of the most known are:
- spike
- scapy
- smudge
- protos
- ...
- Manual testing.
- semi-automatic fuzzing
- automatic fuzzing.
- network stacks
- Arguments, signals, stdin, envvar, file descriptors, ....
- Api's (library calls, systemcalls)
- files (binary, human readable, ...)
- internet explorer
- ios 12.x
- solaris kernel
- grandstream GXP2000 voip phone
- many many more