Page 329 - StudyBook.pdf
P. 329

Communication Security: Web Based Services • Chapter 5  313

                    Buffer overflows are based on the way the C or C++ programming languages
                 work. Many function calls do not check to ensure that the buffer will be big
                 enough to hold the data copied to it. Programmers can use calls that do this check
                 to prevent overflows, but many do not.
                    Creating a buffer overflow attack requires that the hacker understand assembly
                 language as well as technical details about the OS to be able to write the replace-
                 ment code to the stack. However, the code for these attacks is often published so
                 that others, who have less technical knowledge, can use it. Some types of firewalls,
                 called stateful inspection firewalls, allow buffer overflow attacks through, whereas
                 application gateways (if properly configured) can filter out most overflow attacks.
                    Buffer overflows constitute one of the top flaws for exploitation on the
                 Internet today.A buffer overflow occurs when a particular operation/function
                 writes more data into a variable (which is actually just a place in memory) than
                 the variable was designed to hold.The result is that the data starts overwriting
                 other memory locations without the computer knowing those locations have been
                 tampered with.To make matters worse, most hardware architectures (such as Intel
                 and Sparc) use the stack (a place in memory for variable storage) to store function
                 return addresses.Thus, the problem is that a buffer overflow will overwrite these
                 return addresses, and the computer—not knowing any better—will still attempt to
                 use them. If the attacker is skilled enough to precisely control what values are used
                 to overwrite the return pointers, the attacker can control the computer’s next
                 operation(s).

                 Making Browsers and

                 E-mail Clients More Secure

                 There are several steps network administrators and users can take to make Web
                 browsers and e-mail clients more secure and protect against malicious code or
                 unauthorized use of information.These steps include the following:

                      ■  Restricting the use of programming languages
                      ■  Keeping security patches current
                      ■  Becoming aware of the function of cookies












                                                                              www.syngress.com
   324   325   326   327   328   329   330   331   332   333   334