Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Acquiring Editor:
Development Editor:
Project Manager:
Designer:
Chris Katsaropoulos
Meagan White
Priya Kumaraguruparan
Russell Purdy
Trademarks
%LSEVIER )NC THE AUTHORS AND ANY PERSON OR lRM INVOLVED IN THE WRITING
EDITING OR PRODUCTION COLLECTIVELY h-AKERSv OF THIS BOOK hTHE 7ORKv DO
NOT GUARANTEE OR WARRANT THE RESULTS TO BE OBTAINED FROM THE 7ORK
4HERE IS NO GUARANTEE OF ANY KIND EXPRESSED OR IMPLIED REGARDING THE 7ORK OR
ITS CONTENTS 4HE 7ORK IS SOLD !3 )3 AND 7)4(/54 7!22!.49 9OU MAY HAVE
OTHER LEGAL RIGHTS WHICH VARY FROM STATE TO STATE
)N NO EVENT WILL -AKERS BE LIABLE TO YOU FOR DAMAGES INCLUDING ANY LOSS OF
PROlTS LOST SAVINGS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT
FROM THE 7ORK OR ITS CONTENTS "ECAUSE SOME STATES DO NOT ALLOW THE EXCLUSION
OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES THE ABOVE
LIMITATION MAY NOT APPLY TO YOU
9OU SHOULD ALWAYS USE REASONABLE CARE INCLUDING BACKUP AND OTHER APPROPRIATE PRECAUTIONS WHEN WORKING WITH COMPUTERS NETWORKS DATA AND lLES
3YNGRESS -EDIA 3YNGRESS h#AREER !DVANCEMENT 4HROUGH 3KILL %NHANCEMENTv h!SK THE !UTHOR 50$!4%v AND h(ACK 0ROOlNGv ARE REGISTERED
TRADEMARKS OF %LSEVIER )NCh3YNGRESS4HE $ElNITION OF A 3ERIOUS 3ECURITY
,IBRARYv4- h-ISSION #RITICAL4-v AND h4HE /NLY 7AY TO 3TOP A (ACKER IS TO
4HINK ,IKE /NE4-v ARE TRADEMARKS OF %LSEVIER )NC "RANDS AND PRODUCT NAMES
MENTIONED IN THIS BOOK ARE TRADEMARKS OR SERVICE MARKS OF THEIR RESPECTIVE
COMPANIES
Dedication
ix
xvii
2OBERT &ROST GRADUATED FROM THE 5NITED 3TATES -ILITARY !CADEMY IN
COMMISSIONING INTO THE !RMY 3IGNAL #ORPS (E HOLDS A "ACHELOR OF 3CIENCE
DEGREE IN #OMPUTER 3CIENCE WITH HONORS WITH HIS THESIS WORK FOCUSING ON
OPEN
SOURCE INFORMATION
GATHERING 2OB WAS INDIVIDUALLY RECOGNIZED AS ONE OF
THE TOP TWO MEMBERS OF THE NATIONAL CHAMPIONSHIP TEAM FOR THE #YBER
$EFENSE %XERCISE DUE TO HIS ABILITY TO CIRCUMVENT RULES 2OB HAS PARTICIPATED IN
AND WON SEVERAL CYBER SECURITY COMPETITIONS
xix
-ARK "AGGETT IS A #ERTIlED 3!.3 )NSTRUCTOR AND TEACHES SEVERAL COURSES IN THE
3!.3 PENETRATION TESTING CURRICULUM -ARK IS THE PRIMARY CONSULTANT AND
FOUNDER OF )N $EPTH $EFENSE )NC WHICH PROVIDES INCIDENT
RESPONSE AND
PENETRATION
TESTING SERVICES 4ODAY IN HIS ROLE AS THE TECHNICAL ADVISOR TO THE
$EPARTMENT OF $EFENSE FOR 3!.3 -ARK IS FOCUSED ON THE PRACTICAL APPLICATION
OF 3!.3 RESOURCES IN THE DEVELOPMENT OF MILITARY CAPABILITIES
-ARK HAS HELD A VARIETY OF POSITIONS IN INFORMATION SECURITY FOR LARGE INTERNATIONAL AND &ORTUNE COMPANIES (E HAS BEEN A SOFTWARE DEVELOPER A NETWORK AND SYSTEMS ENGINEER A SECURITY MANAGER AND A #)3/ !S A #)3/ -ARK
WAS RESPONSIBLE FOR POLICY COMPLIANCE INCIDENT RESPONSE AND ALL OTHER ASPECTS
OF INFORMATION SECURITY OPERATIONS -ARK KNOWS lRSTHAND THE CHALLENGES THAT
INFORMATION SECURITY PROFESSIONALS FACE TODAY IN SELLING IMPLEMENTING AND
SUPPORTING INFORMATION SECURITY -ARK IS AN ACTIVE MEMBER OF THE INFORMATION
SECURITY COMMUNITY AND THE FOUNDING PRESIDENT OF THE 'REATER !UGUSTA )33!
(E HOLDS SEVERAL CERTIlCATIONS INCLUDING 3!.3 PRESTIGIOUS '3% -ARK BLOGS
ABOUT VARIOUS SECURITY TOPICS AT HTTPWWWPAULDOTCOMCOM
xxi
Introduction
0YTHON IS A HACKERS LANGUAGE 7ITH ITS DECREASED COMPLEXITY INCREASED EFlCIENCY LIMITLESS THIRD
PARTY LIBRARIES AND LOW BAR TO ENTRY 0YTHON PROVIDES AN
EXCELLENT DEVELOPMENT PLATFORM TO BUILD YOUR OWN OFFENSIVE TOOLS )F YOU ARE
RUNNING -AC /3 8 OR ,INUX ODDS ARE IT IS ALREADY INSTALLED ON YOUR SYSTEM
7HILE A WEALTH OF OFFENSIVE TOOLS ALREADY EXIST LEARNING 0YTHON CAN HELP YOU
WITH THE DIFlCULT CASES WHERE THOSE TOOLS FAIL
TARGET AUDIENCE
%VERYONE LEARNS DIFFERENTLY (OWEVER WHETHER YOU ARE A BEGINNER WHO WANTS
TO LEARN HOW TO WRITE 0YTHON OR AN ADVANCED PROGRAMMER WHO WANTS TO LEARN
HOW TO APPLY YOUR SKILLS IN PENETRATION TESTING THIS BOOK IS FOR YOU
Chapter 1: Introduction
)F YOU HAVE NOT PROGRAMMED IN 0YTHON BEFORE #HAPTER PROVIDES BACKGROUND
INFORMATION ABOUT THE LANGUAGE VARIABLES DATA TYPES FUNCTIONS ITERATION
SELECTION AND WORKING WITH MODULES AND METHODICALLY WALKS THROUGH WRITING A FEW SIMPLE PROGRAMS &EEL FREE TO SKIP IT IF YOU ARE ALREADY COMFORTABLE
WITH THE 0YTHON PROGRAMMING LANGUAGE !FTER THE lRST CHAPTER THE FOLLOWING
SIX CHAPTERS ARE FAIRLY INDEPENDENT FROM ONE ANOTHER FEEL FREE TO READ THEM IN
WHICHEVER ORDER YOU PLEASE ACCORDING TO WHAT STRIKES YOUR CURIOSITY
xxiii