Fuzzers can generate test inputs using different strategies….

Fuzzers can generate test inputs using different strategies. Explain the difference between generational fuzzing and mutational fuzzing. (1) In your answer, compare generational fuzzing and mutational fuzzing in terms of how test inputs are created, what prior information they require, such as an input specification or seed corpus, the amount of manual effort involved, and the main strengths and weaknesses of each approach. (2) A coverage-guided mutational fuzzer starts with a seed corpus that covers 150 unique edges in the program. During fuzzing, it generates 4,000 test inputs. Out of these, 120 inputs are kept because each one discovers 2 new unique edges. How many total unique edges are covered after fuzzing? Please show your calculation. Picture116.png

Below is an example code snippet for a user login on a web s…

Below is an example code snippet for a user login on a web site. (1) Give an example input string for ” username” and “userpassword” that can allow an attacker to get access to user names and passwords in the database, and also explain the reason. (2) Rewrite the logic using a safer approach, such as parameterized queries. Explain why the safer version prevents the vulnerability. Picture114.png