Assignment 3 — More Fuzzing2018-10-07This assignment consists of two parts. The submission is a single .tar or .tgz file. Opening the fileshould create a single folder whose name is your a-number. Inside the folder there is one PDF file andtwo subfolders. The PDF file, answers.pdf, contains the answers to both parts of this assignment. Thesubfolders, named part-1 and part-2 contain additional information and solutions for Parts 1 and 2.We will provide a test script. that checks these and some other requirements. If your submission does notmeet the requirements above we will not test it and your mark will be 0.Part 1 (20%) — Getting Here.Break the code that hides the URL of this assignment. This is a part of the assignment even if you reachedhere without breaking the code! Submit a description of how you broke the code. (Not more than one pageof text.) If you used any software to break the code, submit it in the subfolder part-1. Such software canbe in any programming language. It will not be evaluated for coding or style. quality. Its purpose is only tosupport your description.Part 2 (80%) — Advanced Fuzzing.So far we have used fuzzing to find crashes. Fuzzing can also be used for finding logical bugs. The idea isthat you need to compare the output of the program under test with the ground truth, and force a crash,e.g. by calling abort(), if the outputs do not match. This is a slightly limited scenario because you shouldbe able to generate the ground truth, however, this is still useful in some scenarios, for example to verifythat new versions of software produce the same output as the old versions.In this assignment we provide a buggy bignum library. You can get it by running tar xf assignment3.pdfybn. To avoid naming conflicts, we have changed all the functions and type definitions to start with ybninstead of bn , however, the expected semantics of the functions is the same. Your task is to build a testenvironment that allows you to fuzz the code we provide, identify the bugs, and fix them. To get the groundtruth, use your own libbn.a. (Instead of using your own code, you can use any of the examples providedas part of Assignment 2 at a penalty of 10% to this part of the assignment, i.e. 8% of the mark of theassignment. Your answers.pdf must disclose a use of another student’s code.) Adapting your calcprogram could come handy. You are encouraged to also use the sanitisers discussed in class, and can usecode inspection.The folder part-2 in your submission should contains two subfolders: ybn which contains the fixedlibrary, and fuzz which contains the environment you used to build test and fuzz ybn. It may also includea copy of ybn or its contents. We are not evaluating the contents of fuzz for coding quality or correctness.The main reason we need it is to be able to better understand how you built the test environment.In answers.pdf please submit a description of the test environment (30%) and a description of each& 本团队核心人员组成主要包括BAT一线工程师,精通德英语!我们主要业务范围是代做编程大作业、课程设计等等。我们的方向领域:window编程 数值算法 AI人工智能 金融统计 计量分析 大数据 网络编程 WEB编程 通讯编程 游戏编程多媒体linux 外挂编程 程序API图像处理 嵌入式/单片机 数据库编程 控制台 进程与线程 网络安全 汇编语言 硬件编程 软件设计 工程标准规等。其中代写编程、代写程序、代写留学生程序作业语言或工具包括但不限于以下范围:C/C++/C#代写Java代写IT代写Python代写辅导编程作业Matlab代写Haskell代写Processing代写Linux环境搭建Rust代写Data Structure Assginment 数据结构代写MIPS代写Machine Learning 作业 代写Oracle/SQL/PostgreSQL/Pig 数据库代写/代做/辅导Web开发、网站开发、网站作业ASP.NET网站开发Finance Insurace Statistics统计、回归、迭代Prolog代写Computer Computational method代做因为专业,所以值得信赖。如有需要,请加QQ:99515681 或邮箱:99515681@qq.com 微信:codehelp QQ:99515681 或邮箱:99515681@qq.com 微信:codehelp
网友评论