Programming Books C Java PHP Python Learn more Browse Programming Books
  • List Price: $39.95
  • Save: $10.08 (25%)
FREE Shipping on orders over $35.
Only 13 left in stock (more on the way).
Ships from and sold by
Gift-wrap available.
+ $3.99 shipping
Used: Like New | Details
Sold by Book_Park
Condition: Used: Like New
Comment: US Edition. Used like new in Perfect Condition. We do not ship to APO/FPO addresses. Ship within one business days via Standard or Expedite. .For Standard Shipping, delivery will be in 7-8 business days & Expedite Shipping delivery will be in 2-3 business days.
Access codes and supplements are not guaranteed with used items.
Sell yours for a Gift Card
We'll buy it for $2.00
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Coding for Penetration Testers: Building Better Tools Paperback – October 7, 2011

ISBN-13: 978-1597497299 ISBN-10: 1597497290 Edition: 1st

Buy New
Price: $29.87
25 New from $20.38 13 Used from $22.88
Rent from Amazon Price New from Used from
"Please retry"
"Please retry"
$20.38 $22.88
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Frequently Bought Together

Coding for Penetration Testers: Building Better Tools + Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers + Rtfm: Red Team Field Manual
Price for all three: $63.97

Buy the selected items together
Hero Quick Promo
12 Days of Kindle Book Deals
Load your library with Amazon's editors' picks, $2.99 or less each today only. Learn more

Product Details

  • Paperback: 320 pages
  • Publisher: Syngress; 1 edition (October 7, 2011)
  • Language: English
  • ISBN-10: 1597497290
  • ISBN-13: 978-1597497299
  • Product Dimensions: 1 x 7.8 x 9.5 inches
  • Shipping Weight: 1.3 pounds (View shipping rates and policies)
  • Average Customer Review: 3.7 out of 5 stars  See all reviews (6 customer reviews)
  • Amazon Best Sellers Rank: #1,112,783 in Books (See Top 100 in Books)

Editorial Reviews


"This book is definitely not for rookie coders, but rather a good starting point for people with a medium level of programming experience. It is also not suited well as a reference to quickly look things up in. But if what you're looking for is a very practical guide with tons of pointers to further (and recommended) reading material and exercises Coding for Penetration Testers delivers what it promises."--Computers and Security

"Penetration testing is a profession that requires the mastery of dozens of tools; every job poses challenges that require these tools to be mixed, matched, and automated. The master penetration tester not only excels at using his or her toolbox, but also expands it with custom scripts and unique programs to solve the challenge of the day. This book provides a solid introduction to custom scripting and tool development, using multiple languages, with a penetration tester's goals in mind. This background can transform penetration testing from a manual, often repetitive task, to an efficient process that is not just faster, but also more accurate and consistent across large engagements."--HD Moore, Metasploit Founder and CSO of Rapid7

"Penetration testing requires that the tester understand the target as much as possible, and know how to perform various attacks while being as efficient as possible. Having the skill set to create and use a variety of scripts increases the penetration tester's efficiency and elevates him or her from the script kiddie to the professional realm. Ryan Linn and Jason Andress have created a guide that explores and introduces the techniques that are necessary to build the scripts used during a test. No matter the platform, this book provides the information required to learn scripting and become a world-class penetration tester. This is definitely a book that will remain close at hand for every test I perform!"--Kevin Johnson, Senior Consultant, Secure Ideas

"At 175 pages, the book does not kill many trees, but does give the reader an overview of all of the key principles around information security.For those looking to get their feet wet in the deep waters of information security, The Basics of Information Security: Understanding the Fundamentals of InfoSec in Theory and Practice is a great place to start."

"Overall this is an excellent book, which offers some clear and effective tutorials on the different languages and on efficient and effective penetration testing. It's highly recommended for any testers who want to broaden their skills and move to the next level."

From the Back Cover

Tools used for penetration testing are often purchased or downloaded from the Internet. Each tool is based on a programming language such as Perl, Python, or Ruby. If a penetration tester wants to extend, augment, or change the functionality of a tool to perform a test differently than the default configuration, the tester must know the basics of coding for the related programming language. Coding for Penetration Testers provides the reader with an understanding of the scripting languages that are commonly used when developing tools for penetration testing. It also guides the reader through specific examples of custom tool development and the situations where such tools might be used. While developing a better understanding of each language, the reader is guided through real-world scenarios and tool development that can be incorporated into a tester's toolkit.

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

3.7 out of 5 stars
Share your thoughts with other customers

Most Helpful Customer Reviews

21 of 23 people found the following review helpful By Jirka Vejrazka on December 1, 2011
Format: Paperback
I have to say this has been the biggest disappointment of all security-related books that I ever purchased (there were dozens). It should be named "A quick glance at a few scripting languages".

To give an example, Python is mentioned on 33 pages (that includes a few pages for scapy) where you'll be shown how to (hold your breath) send an ICMP packet. (I will not talk about PEP8 here).

To drill a bit further, the chapter about Python lists is about (wait for it) - bitwise operations. Lists are only mentioned as a way of storing data for the given example which shows how you can use Python to calculate net & broadcast address from a CIDR notation (why would you want to use lists for that?). There is no meaningful mention of list indexing or slicing.

The chapter about Python exceptions is just appaling.

There is no explanation of "why" anywhere, just "what" and a little bit of "how". Also, no hint on where to look for further information.

Real beginners might find this book interesting for getting a basic idea of how are scripting languages used (bash, Python, Perl, Ruby and PowerShell all get a really quick intro). But then they would get really confused towards the end of the book when they suddenly find authors throwing shellcode at vulnerable FTP server and using some terms that are mentioned very briefly: "EIP is called the Instruction pointer", "ESP points to stack area where you can see the stack", "as you can see, the EIP is now overwritten with 41414141 so the server is vulnerable". Is any beginner expected to understand this?

I'm really struggling to see who is the intended audience. It does not give any explanation to beginners and is way too shallow for any penetration tester.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
1 of 1 people found the following review helpful By John M on March 14, 2014
Format: Paperback Verified Purchase
Let me start by saying that this book is good IN THEORY. Each section starts out with an introduction/overview, then leads into deeper explanation and hands-on practice. However the book is too greatly flawed to deserve a purchase. The reasons being:

1) It is plagued with technical errors. Try the exercises in the Python section for example. One such exercise glaringly fails to use the string function when adding a string and an integer, forcing the reader to scratch their head as errors get thrown until they realize after googling and researching that you cannot add a string and an integer without proper usage of the syntax. For a beginner (the target of a book that is filled with beginner's exercises and explanations), this is unacceptable. I gave up on using it as an intro to scripting and purchased better books for each language.

2) The exercises and topics are horribly designed. Obviously space is an issue and the authors wanted to get through each language quickly. However, you don't accomplish this by cramming everything into a couple scripts, so the reader can barely decipher the subtle changes in the output. Also, for example, the section on bash scripts barely covers anything at all. I found an online guide withe more information on bash scripting in a single section than the whole treatment available in this book.

3) The book really doesn't cover much even when you consider how many topics they try to cover.

4) Kind of going off 2, this is a very poor intro to scripting. It is actually counter-productive as it neither provides a strong foundation nor builds on existing knowledge to do something different.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
By LexLuthor on October 22, 2012
Format: Paperback
This has been a really helpful book to me in learning to make some use of new scripting tools in more useful directions. I have a bit of python right now, but having examples of how these languages can be used across several different languages is really useful. Some of the book is still a bit over my head, but I sure feel like I'm starting to get there. Great read and some good excercises to make the examples even better. I'm hoping they'll do a second book and keep going with other languages.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again