Sockets, Shellcode, Porting & Coding: Reverse Engineering Exploits and Tool Coding for Security Professionals

Frequently Asked Questions

The following Frequently Asked Questions, answered by the authors of this book, are designed to both measure your understanding of the concepts presented in this chapter and to assist you with real-life implementation of these concepts. To have your questions about this chapter answered by the author, browse to www.syngress.com/solutions and click on the Ask the Author form. You will also gain access to thousands of other FAQs at ITFAQnet.com.

Q: If I want to customize a scripting language, which one is the easiest to extend?

A: Most scripting languages are easy to extend. All things considered, Perl would probably be the easiest to extend, followed by Python, then Javascript. Language extensions can come in a variety of formats, but most commonly, these extensions get implemented through libraries or modules that are parsed during script execution or runtime. The main difference between extending languages is the potential increase in memory during each script execution cycle.

Q: Why is it so difficult to replicate raw socket support within scripting languages?

A: Scripting languages are designed to be easy and quick programming tools, at the expense of some functionality. First and foremost, the scripts do not need to be compiled and they generally do not reference specific locations or addresses in memory. The socket functionality implemented within most of these languages is geared for the masses, not the super techies who want to modify specific flags within a Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) packet. Most socket...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Specialty Communications Infrastructure Services
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.