جلسه اول پایتون برای هکر های قانونی دوره مقدماتی پاییز ۹۲
Python for ethical hackers
Mohammad reza Kamalifard
Python language essentials
Introduction to Python and Setting up an Environment
Python a short History
• Created in 1989 by Huido Van Rossum (now he works for
Google in App Engine)
Python 2.x in 2000
Python 3.x in 2008
Python 3 is not backward compatible
2.x is the status quo
Why Python ?
• Python is an easy to learn
• efficient high-level data structures
• write complex operations in fewer statements than in C, C++ or
Object-oriented programming is a lot easier than in languages
Clean syntax and code readability
Python programs are portable
Rich set of libraries
Large Number of open source tools
• Unix/ Linux
• Mac OS X
• Mobile Platforms – Android, IOS
• Embedded Systems
• Cpython – reference implementation “Python”
• Jython – Python implementation in Java
• IronPython – Python implementation in C#
Why Python in InfoSec?
• Rapid prototyping – POC ( proof on concept )
• Extensive library support
• Tons of tools already written
• If you want to write POC very fast actually you need
language which is High level allows you to concentrate
more on business of the application rather than having to
worry about integrity details.
Python On different OS
• Linux :
Download python 2.7.5 from http://python.org/getit
Or Download and install Activestate Python
• Mac OS :
Python 2.7 or 3.X ?
• Python 3 is not backward compatible
• Most tools / Libraries still do not Support 3.x
• We use python 2.7 here in this course
Using the Python Interactive Interpreter
Python 2.7.3 (default, Apr 10 2013, 05:46:21)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for
Use the interpreter as a simple calculator
>>> 12 / 7
>>> 12.0 / 7
>>> float(12) / 7
Order of operations
2. exponents and roots
3. multiplication and division
4. Addition and subtraction
>>> 3 + 2 * 4
>>> ( 3 + 2 ) * 4
The most recent output value is automatically stored by the interpreter in a special
variable with the name "_“
Execute a Python script
• The interactive interpreter is great for checking small bits
of code but if we have to write a serious program or script,
we need to save our script in a file.
• To save and edit programs in a file we need an editor.
• There are lots of editors, but you should choose one,
which supports syntax highlighting and indentation. Under
Linux you can use vi, vim, sublime text, Eclipse, emacs,
geany, gedit and others.
SPSE securitytube training by Vivek Ramachandran
SANS Python for Pentesters (SEC573)
Security Power Tools
This work is licensed under the Creative Commons Attribution-NoDerivs 3.0 Unported License.
To view a copy of this license, visit
Copyright 2013 Mohammad Reza Kamalifard
All rights reserved.
Go to Kamalifard.ir/pysec101 to Download Slides and Course martials .