Show simple item record

dc.contributor.advisorIrvine, Cynthia E.
dc.contributor.advisorNguyen, Thuy D.
dc.contributor.authorWikman, Eric C.
dc.date.accessioned2020-08-21T00:25:11Z
dc.date.available2020-08-21T00:25:11Z
dc.date.issued2020-06
dc.identifier.urihttp://hdl.handle.net/10945/65471
dc.description.abstractBuffer overflows are common software vulnerabilities; it is possible for a program to write outside of the intended boundary of a buffer. In most cases, this causes the program to crash. In more dangerous situations, a buffer overflow can provide the access an attacker needs to gain remote code execution. To create programs that are reliable and free of buffer overflows, we need a method for analyzing code to detect potential buffer overflow vulnerabilities. One method to detect errors is to perform static analysis on the program. This involves looking at a program's disassembled code to find the errors in the program. Fortunately, Ghidra, a reverse engineering tool, can perform the disassembly of the executable. With the Ghidra API, scripts can be developed to perform the task of analyzing programs for buffer overflows. This research investigates the area of stack-based buffer overflows and how to discover them using static analysis. Specifically, the research looks into cases where buffer overflows occur in libc functions, which are referred to as vulnerable sinks. This research involved the development of a Ghidra script to search for vulnerable sinks in a binary file and find all the parameters that are used in the sinks. This allows for buffer overflows to be calculated on a per-sink basis. The research showed that it is possible to find overflow vulnerabilities via static analysis and that calculating whether a buffer can be overflowed is possible.en_US
dc.publisherMonterey, CA; Naval Postgraduate Schoolen_US
dc.rightsThis publication is a work of the U.S. Government as defined in Title 17, United States Code, Section 101. Copyright protection is not available for this work in the United States.en_US
dc.titleSTATIC ANALYSIS TOOLS FOR DETECTING STACK-BASED BUFFER OVERFLOWSen_US
dc.typeThesisen_US
dc.contributor.departmentComputer Science (CS)
dc.subject.authorbuffer overflowen_US
dc.subject.authorGhidraen_US
dc.description.recognitionOutstanding Thesisen_US
dc.description.serviceCaptain, United States Marine Corpsen_US
etd.thesisdegree.nameMaster of Science in Computer Scienceen_US
etd.thesisdegree.levelMastersen_US
etd.thesisdegree.disciplineComputer Scienceen_US
etd.thesisdegree.grantorNaval Postgraduate Schoolen_US
dc.identifier.thesisid34390
dc.description.distributionstatementApproved for public release. distribution is unlimiteden_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record