عنوان مقاله :
توليد خودكار داده آزمون در فازرهاي قالب فايل
عنوان به زبان ديگر :
Automatic Test Data Generation in File Format Fuzzers
پديد آورندگان :
ذاكري نصرآبادي، مرتضي دانشگاه علم و صنعت ايران، تهران , پارسا، سعيد دانشگاه علم و صنعت ايران، تهران
كليدواژه :
آزمون فازي , داده آزمون , پوشش كد , شبكه عصبي مكرر , مدل زباني , يادگيري ژرف
چكيده فارسي :
آزمون فازي يك فن آزمون پوياي نرمافزار است. در اين فن با توليد وروديهاي بدشكل و تزريق پيدرپي آنها به نرمافزار تحت آزمون، دنبال يافتن خطاها و آسيبپذيريهاي احتمالي آن هستيم. ورودي اصلي بسياري از نرمافزارهاي دنياي واقعي فايل است. تعداد زيادي از دادههاي آزمون كه براي آزمون فازي اين نرمافزارها توليد ميشوند در همان مراحل اوّليه بهعلّت نداشتن قالب مورد قبول، توسط پويشگر فايل برنامه رد ميشوند. در نتيجه شاهد پوشش كم كد برنامه در روند آزمون فازي هستيم. استفاده از گرامرِ ساختار فايل براي توليد داده آزمون، منجربه افزايش پوشش كد ميگردد، اما اين گرامر معمولاً بهصورت دستي تهيه ميشود كه كاري زمانبر، پرهزينه و مستعد خطا است. در اين مقاله روشي نو با استفاده از مدلهاي زباني عصبي ژرف براي يادگيري خودكار ساختار فايل و سپس توليد و فاز دادههاي آزمون ارائه شده است. آزمايشهاي ما بهبود پوشش كد روش پيشنهادي را در مقايسه با ديگر روشهاي توليد داده آزمون نشان ميدهد. براي نرمافزار MuPDF كه قالب فايل پيچيده PDF را بهعنوان ورودي ميپذيرد، بيش از 1/30 تا 12 درصد بهبود پوشش كد را نسبت به روشهاي هوشمند و روش تصادفي داشتهايم.
چكيده لاتين :
Fuzzing is a dynamic software testing technique. In this technique with repeated generation and injection of
malformed test data to the software under test (SUT), we are looking for the possible errors and
vulnerabilities. Files are significant inputs to most real-world applications. Many of test data which are
generated for fuzzing such programs are rejected by the parser because they are not in the acceptable
format and this results in a low code coverage in the process of fuzz testing. Using the grammatical
structure of input files to generate test data leads to increase code coverage. However, often, the grammar
extraction is performed manually, which is a time consuming, costly and error-prone task. In this paper, a
new method, based on deep neural language models (NLMs), is proposed for automatically learning the
file structure and then generating and fuzzing test data. Our experiments demonstrate that the data
produced by this method leads to an increase in the code coverage compared to previous test data
generation methods. For MuPDF software, which accepts the PDF complex file format as an input, we
have more than 1.30 to 12 improvement in percent code coverage than both the intelligence and random
methods.
عنوان نشريه :
پدافند الكترونيكي و سايبري