We have designed and implemented an Evolutionary Fuzzing System (EFS) to help find new vulnerabilities. Traditional fuzzing techniques require that a new fuzzer be built for each protocol, a never ending process. EFS attempts to eliminate this effort by dynamically learning a protocol using code coverage and other feedback mechanisms.