Abstract-Den automatiska upptäckt av programvara sårbarheter är ett viktigt forskningsproblem. Befintliga lösningar på detta problem är dock beroende av mänskliga experter för att definiera funktioner och missar ofta många sårbarheter (dvs. hög falsk negativ frekvens). I detta dokument initierar vi studien av att använda djupinlärning-baserad sårbarhetsdetektering för att befria mänskliga experter från den tråkiga och subjektiva uppgiften att manuellt definiera funktioner. Eftersom djupinlärning är motiverad att ta itu med problem som skiljer sig mycket från problemet med sårbarhetsdetektering, behöver vi några vägledande principer för att tillämpa djupinlärning på sårbarhetsdetektering. I synnerhet behöver vi hitta representationer av program som lämpar sig för djupt lärande. För detta ändamål föreslår vi att använda kod prylar för att representera program och sedan omvandla dem till vektorer, där en kod gadget är ett antal (inte nödvändigtvis på varandra följande) rader av kod som är semantiskt relaterade till varandra. Detta leder till utformning och genomförande av ett djupinlärningsbaserat sårbarhetsdetekteringssystem, kallat Vulnerability Deep Pecker (VulDeePecker). För att utvärdera VulDeePecker presenterar vi den första sårbarhetsdatauppsättningen för djupt lärande. Experimentella resultat visar att VulDeePecker kan uppnå mycket färre falska negativa (med rimliga falska positiva) än andra metoder. Vi tillämpar också VulDeePecker på 3 programvaruprodukter (nämligen Xen, Seamonkey och Libav) och upptäcker 4 sårbarheter, som inte rapporteras i National Sårbarhet Database men var "tyst" lappas av leverantörerna när de släpper senare versioner av dessa produkter; däremot, dessa sårbarheter nästan helt missas av de andra sårbarhetsdetekteringssystem vi experimenterade med.
Löjtnant m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m för m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m. föreslog en djupt lärande-baserad sårbarhetsdetektor VulDeePecker REF.
VulDeePecker: A Deep Learning-Based System for Vulnerability Detection
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}