Software security
Pages
Introduction to software security
Security is a non-functional requirement of software engineering. Creating inherently secure applications is a fundamental, yet often unknown, skill for a good developer or software engineer. A…
Recalls of Linux
The following concepts apply, with proper modifications, to any machine architecture (e.g., ARM, x86), operating system (e.g., Windows, Linux, Darwin), and executable (e.g., Portable Executable (PE),…
Buffer overflows
A function foo() allocates a buffer, e.g., char buf[8] . buf is filled without size checking . int foo ( int a , int b ) { int c = 14 ; char buf [ 8 ]; gets ( buf ); //security bug ->…
Format String Bugs
A format string is solution to the problem of allowing a string to be output that includes variables formatted precisely as dictated by the programmer. The data format is specified into a string…
Exercises on software security
2022-2021 DEMO Exam exercise 3 (6 points) Assume that: The C standard library is loaded at a known address during every execution of the program, and that the address of the function system() is…