EditWYSIWYGAttach PDF Raw View►More Actions▼More Actions

Restore topic to revision: You will be able to review the topic before saving it to a new revision

Copy text and form data to a new topic (no attachments will be copied though).
Name of copy:
You will be able to review the copied topic before saving

Rename/move topic... scans links in all public webs (recommended)
Rename/move topic... scans links in CBI_ComputerSecurity web only
Delete topic... scans links in all public webs (recommended)
Delete topic... scans links in CBI_ComputerSecurity web only

Revision Date Username Comment
1207 Apr 2015 - 15:32ThomasMisa 
1105 Mar 2015 - 14:08sever408? 
1005 Mar 2015 - 14:05sever408? 
923 Feb 2015 - 12:20sever408? 
816 Nov 2014 - 17:02ThomasMisa 
716 Nov 2014 - 17:01ThomasMisa 
630 Oct 2014 - 17:59ThomasMisa 
530 May 2014 - 16:28ThomasMisa 
425 Feb 2014 - 10:05norqu036? 
311 Feb 2014 - 11:13norqu036? 
earlier first

Render style:     Context:

 History: r12 | r5 < r4 < r3 < r2
[X] Hide this message.
Notice: On June 30, 2016, UMWiki service will be decommissioned. If you have information in UMWIki that needs to be preserved, you should make plans to move it before that date. Google Sites is anticipated to be the most popular and appropriate alternative for users because it offers a more modern and user-friendly interface and unlimited capacity. To learn more about the features of Google Sites and other alternatives, and to identify which one best fits your needs, see the University’s Website Solution Selection Guide. If you have concerns or would like help regarding this change and your options, please contact Technology Help at help@umn.edu
You are here: UMWiki>CBI_ComputerSecurity Web>Mechanisms>MechanismsBufferOverflow (revision 3)

Current Activitieslock Who is Who?lock People Programs Publications CSHW_2014 Systems Events Mechanisms

Buffer Overflow

"A buffer overflow is the computing equivalent of trying to pour two liters of water into a one-liter pitcher: some water is going to spill out and make a mess."(1) A buffer overflow, sometimes called a buffer overrun, occurs when a program that is writing data to a buffer (a sequential section of memory) writes data past the buffer's boundary and into adjacent memory. The Multics operating system of the 1960s was particularly secure against such attacks due to a variety of checks built into the software and hardware of the system. Some computing languages, such as Pascal, C, and C++, do not require the programmer to pre-define the size of the buffer, which means that the compiler has no way to know the proper boundary of the buffer. Even in programming languages that do check such things, such as C#, Java, and Visual Basic, there is no way to check every single circumstance due to the heavy use of pointers in modern programming, as well as the practical limits of compilers. (2)

Overflows cause serious problems in some instances. When an overflow occurs, the damage it causes depends on what exactly is in the memory that gets overwritten. If the program overflows into either the user's data space or the user's program area, the consequences are limited solely to the user and to the program in question. If the space contained already-used data or an already-performed program instruction, there might be no detectable effect on the program. Errors or inaccuracies in the program could result, depending on the nature of the data overwritten.

In more serious cases, however, the program overflows into parts of the computer's memory that contain data or code for the operating system, causing errors in the operating system. Malicious persons sometimes seek to take advantage of this vulnerability, using it to place unauthorized instructions within the operating system. The operating system of a computer generally has much higher privileges than normal programs, so any malicious code masquerading as the operating system will have identical privileges. This allows the malicious programmer to gain control over the system. Because they are difficult to find buffer overflows are the target of many forms of malicious code, including the SQLSlammer worm (sometimes called the Sapphire worm).(3)


1 , 2 , 3 : Charles P. Pfleeger and Shari Lawrence Pfleeger, Security in Computing. 3rd Edition, New Jersey: Prentice Hall, 2003.

Edit | WYSIWYG | Attach |  PDF |  History: r12 | r5 < r4 < r3 < r2 |  Backlinks |  Raw View | More topic actions...
Topic revision: r3 - 11 Feb 2014 - 11:13:40 - norqu036
Signed in as lewi0740 (NicLewis) | Sign out
UMWiki UMWiki
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding UMWiki? Send feedback