Card | Table | RUSMARC | |
Ortega, José Manuel. Mastering Python for networking and security [[electronic resource]]: leverage Python scripts and libraries to overcome networking and security issues. — Birmingham: Packt, 2018. — 1 online resource (415 p.) — <URL:http://elib.fa.ru/ebsco/1905979.pdf>.Record create date: 10/13/2018 Subject: Python (Computer program language); COMPUTERS / Programming Languages / Python.; COMPUTERS / Security / General. Collections: EBSCO Allowed Actions: –
Action 'Read' will be available if you login or access site from another network
Action 'Download' will be available if you login or access site from another network
Group: Anonymous Network: Internet |
Document access rights
Network | User group | Action | ||||
---|---|---|---|---|---|---|
Finuniversity Local Network | All | |||||
Internet | Readers | |||||
Internet | Anonymous |
Table of Contents
- Cover
- Title Page
- Copyright and Credits
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Working with Python Scripting
- Technical requirements
- Programming and installing Python
- Introducing Python scripting
- Why choose Python?
- Multi-platform
- Object-Oriented Programming
- Obtaining and installing Python
- Installing Python on Windows
- Installing Python for Linux
- Introducing Python scripting
- Python collections
- Lists
- Reversing a List
- Comprehension lists
- Tuples
- Dictionaries
- Lists
- Python functions and managing exceptions
- Python functions
- Managing exceptions
- Python as an OOP language
- Inheritance
- The OMSTD methodology and STB Module for Python scripting
- Python packages and modules
- What is a module in Python?
- Difference Between a Python Module and a Python Package
- Passing parameters in Python
- Managing dependencies in a Python project
- Generating the requirements.txt file
- Working with virtual environments
- Using virtualenv and virtualwrapper
- The STB (Security Tools Builder) module
- Python packages and modules
- The main development environments for script-development
- Setting up a development environment
- Pycharm
- WingIDE
- Debugging with WingIDE
- Summary
- Questions
- Further reading
- Chapter 2: System Programming Packages
- Technical requirements
- Introducing system modules in python
- The system module
- The operating system module
- Contents of the current working directory
- Determining the operating system
- Subprocess module
- Working with the filesystem in Python
- Accessing files and directories
- Recursing through directories
- Checking whether a specific path is a file or directory
- Checking whether a file or directory exists
- Creating directories in Python
- Reading and writing files in Python
- File methods
- Opening a file
- With a Context Manager
- Reading a file line by line
- Accessing files and directories
- Threads in Python
- Introduction to Threads
- Types of threads
- Processes vs Threads
- Creating a simple Thread
- Threading module
- Introduction to Threads
- Multithreading and concurrency in Python
- Introduction to Multithreading
- Multithreading in Python
- Limitations with classic python threads
- Concurrency in python with ThreadPoolExecutor
- Creating ThreadPoolExecutor
- ThreadPoolExecutor in practice
- Executing ThreadPoolExecutor with Context Manager
- Python Socket.io
- Introducing WebSockets
- aiohttp and asyncio
- Implementing a Server with socket.io
- Summary
- Questions
- Further reading
- Chapter 3: Socket Programming
- Technical requirements
- Introduction to sockets
- Network sockets in Python
- The socket module
- Socket methods
- Server socket methods
- Client socket methods
- Basic client with the socket module
- Creating a simple TCP client and TCP server
- Creating a server and client with sockets
- Implementing the TCP serverIn this example, we are going to create a multithreaded TCP server.
- Implementing the TCP client
- Creating a simple UDP client and UDP server
- Introduction to the UDP protocol
- UDP client and server with the socket module
- Implementing the UDP Server
- Implementing the UDP client
- Resolving IP addresses and domains
- Gathering information with sockets
- Reverse lookup
- Practical use cases for sockets
- Port scanner with sockets
- Managing socket exceptions
- Summary
- Questions
- Further reading
- Chapter 4: HTTP Programming
- Technical requirements
- HTTP protocol and building HTTP clients in python
- Introduction to the HTTP Protocol
- Building an HTTP Client with httplib
- Building an HTTP Client with urllib2
- Introduction to urllib2
- Response objects
- Status codes
- Checking HTTP headers with urllib2
- Using the urllib2 Request class
- Customizing requests with urllib2
- Getting emails from a URL with urllib2
- Getting links from a URL with urllib2
- Building an HTTP Client with requests
- Introduction to requests
- Requests advantages
- Making GET Requests with the REST API
- Making POST Requests with the REST API
- Making Proxy Requests
- Managing exceptions with requests
- Authentication mechanisms with Python
- Authentication with the requests module
- HTTP Basic authentication
- HTTP Digest Authentication
- Summary
- Questions
- Further Reading
- Chapter 5: Analyzing Network Traffic
- Technical requirements
- Capturing and injecting packets with pcapy
- Introduction to pcapy
- Capturing packets with pcapy
- Reading headers from packets
- Capturing and injecting packets with scapy
- What can we do with scapy?
- Scapy advantages and disadvantages
- Introduction to scapy
- Scapy commands
- Sending packets with scapy
- Packet-sniffing with scapy
- Using Lamda functions with scapy
- Filtering UDP packets
- Port-scanning and traceroute with scapy
- Port-scanning with scapy
- Traceroute command with scapy
- Reading pcap files with scapy
- Introduction to the PCAP format
- Reading pcap files with scapy
- Writing a pcap file
- Sniffing from a pcap file with scapy
- Network Forensic with scapy
- Summary
- Questions
- Further reading
- Chapter 6: Gathering Information from Servers
- Technical requirements
- Introduction to gathering information
- Extracting information from servers with Shodan
- Introduction to Shodan
- Accessing Shodan services
- Shodan filters
- Shodan search with python
- Performing searches by a given host
- Searching for FTP servers
- Using python to obtain server information
- Extracting servers banners with python
- Finding whois information about a server
- Getting information on dns servers with DNSPython
- DNS protocol
- DNS servers
- The DNSPython module
- Getting vulnerable addresses in servers with Fuzzing
- The Fuzzing process
- The FuzzDB project
- Fuzzing with python with pywebfuzz
- Summary
- Questions
- Further reading
- Chapter 7: Interacting with FTP, SSH, and SNMP Servers
- Technical requirements
- Connecting with FTP servers
- The File Transfer Protocol (FTP)
- The Python ftplib module
- Transferring files with FTP
- Using ftplib to brute force FTP user credentials
- Building an anonymous FTP scanner with Python
- Connecting with SSH servers
- The Secure Shell (SSH) protocol
- Introduction to Paramiko
- Installing Paramiko
- Establishing SSH connection with Paramiko
- Running commands with Paramiko
- SSH connection with brute-force processing
- SSH connection with pxssh
- Running a command on a remote SSH server
- Connecting with SNMP servers
- The Simple Network Management Protocol (SNMP)
- PySNMP
- Summary
- Questions
- Further reading
- Chapter 8: Working with Nmap Scanners
- Technical requirements
- Introducing port scanning with Nmap
- Introducing to port scanning
- Scanning types with Nmap
- Port scanning with python-nmap
- Introduction to python-nmap
- Installing python-nmap
- Using python-nmap
- Scan modes with python-nmap
- Synchronous scanning
- Asynchronous scanning
- Vulnerabilities with Nmap scripts
- Executing Nmap scripts to detect vulnerabilities
- Detecting vulnerabilities in FTP service
- Summary
- Questions
- Further reading
- Chapter 9: Connecting with the Metasploit Framework
- Technical requirements
- Introducing the Metasploit framework
- Introduction to exploiting
- Metasploit framework
- Metasploit architecture
- Interacting with the Metasploit framework
- Introduction to msfconsole
- Introduction to the Metasploit exploit module
- Introduction to the Metasploit payload module
- Introduction to msgrpc
- Connecting the Metasploit framework and Python
- Introduction to MessagePack
- Installing python-msfrpc
- Executing API calls
- Exploiting the Tomcat service with Metasploit
- Using the tomcat_mgr_deploy exploit
- Connecting Metasploit with pyMetasploit
- Introduction to PyMetasploit
- Interacting with the Metasploit framework from python
- Summary
- Questions
- Further reading
- Chapter 10: Interacting with the Vulnerabilities Scanner
- Technical requirements
- Introducing vulnerabilities
- Vulnerabilities and exploits
- What is a vulnerability?
- What is an exploit?
- Vulnerabilities format
- Vulnerabilities and exploits
- Introducing the Nessus Vulnerabilities scanner
- Installing the Nessus Vulnerabilities scanner
- Executing the Nessus Vulnerabilities scanner
- Identifying vulnerabilities with Nessus
- Accessing the Nessus API with Python
- Installing the nessrest Python module
- Interacting with the nesssus server
- Introducing the Nexpose Vulnerabilities scanner
- Installing the Nexpose Vulnerabilities scanner
- Executing the Nexpose Vulnerabilities scanner
- Accessing the Nexpose API with Python
- Installing the pynexpose Python Module
- Summary
- Questions
- Further reading
- Chapter 11: Identifying Server Vulnerabilities in Web Applications
- Technical requirements
- Introducing vulnerabilities in web applications with OWASP
- Introduction to OWASP
- OWASP common attacks
- Testing Cross-site scripting (XSS)
- W3af scanner vulnerabilities in web applications
- W3af overview
- W3AF profiles
- W3af install
- W3af in Python
- Discovering sql vulnerabilities with Python tools
- Introduction to SQL injection
- Identifying pages vulnerable to SQL Injection
- Introducing SQLmap
- Installing SQLmap
- Using SQLMAP to test a website for a SQL Injection vulnerability
- Other commands
- Other tools for detecting SQL Injection vulnerabilities
- DorkMe
- XSScrapy
- Testing heartbleed and SSL/TLS vulnerabilities
- Introducing OpenSSL
- Finding vulnerable servers in Shodan
- Heartbleed vulnerability (OpenSSL CVE-2014-0160)
- Other tools for testing openssl vulnerability
- Heartbleed-masstest
- Scanning for Heartbleed with the nmap port scanner
- Analyzing SSL/TLS configurations with SSLyze script
- Other services
- Summary
- Questions
- Further reading
- Chapter 12: Extracting Geolocation and Metadata from Documents, Images, and Browsers
- Technical Requirements
- Extracting geolocation information
- Introduction to geolocation
- Introduction to Pygeoip
- Introduction to pygeocoder
- The MaxMind database in Python
- Extracting metadata from images
- Introduction to Exif and the PIL module
- Getting the EXIF data from an image
- Understanding Exif Metadata
- Extracting metadata from web images
- Extracting metadata from pdf documents
- Introduction to PyPDF2
- Peepdf
- Identifying the technology used by a website
- Introduction to the builtwith module
- Wappalyzer
- wig – webapp information gatherer
- Extracting metadata from web browsers
- Firefox Forensics in Python with dumpzilla
- Dumpzilla command line
- Firefox forensics in Python with firefeed
- Chrome forensics with python
- Chrome forensics with Hindsight
- Firefox Forensics in Python with dumpzilla
- Summary
- Questions
- Further reading
- Chapter 13: Cryptography and Steganography
- Technical requirements
- Encrypting and decrypting information with pycrypto
- Introduction to cryptography
- Introduction to pycrypto
- Encrypting and decrypting with the DES algorithm
- Encrypting and decrypting with the AES algorithm
- File encryption with AES
- File decryption with AES
- Encrypting and decrypting information with cryptography
- Introduction to cryptography
- Symmetric encryption with the fernet package
- Using passwords with the fernet package
- Symmetric encryption with the ciphers package
- Steganography techniques for hiding information in images
- Introduction to Steganography
- Steganography with Stepic
- Hiding data inside images with stepic
- Summary
- Questions
- Further reading
- Assessments
- Other Books You May Enjoy
- Index
Usage statistics
Access count: 2
Last 30 days: 0 Detailed usage statistics |