50% found this document useful (2 votes)
646 views

Penetration Testing With Kali Linux - 5 Days

This document provides an overview of penetration testing using Kali Linux. It discusses getting comfortable using Kali Linux, essential tools for penetration testing like Netcat and Wireshark, passive information gathering techniques from open web sources and active information gathering like DNS enumeration and port scanning. It also covers vulnerability scanning with Nmap and OpenVAS and buffer overflow exploitation on both Windows and Linux systems. The document is intended to guide readers through the process of penetration testing from initial information gathering to exploiting vulnerabilities.

Uploaded by

Ashish Kolambkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
50% found this document useful (2 votes)
646 views

Penetration Testing With Kali Linux - 5 Days

This document provides an overview of penetration testing using Kali Linux. It discusses getting comfortable using Kali Linux, essential tools for penetration testing like Netcat and Wireshark, passive information gathering techniques from open web sources and active information gathering like DNS enumeration and port scanning. It also covers vulnerability scanning with Nmap and OpenVAS and buffer overflow exploitation on both Windows and Linux systems. The document is intended to guide readers through the process of penetration testing from initial information gathering to exploiting vulnerabilities.

Uploaded by

Ashish Kolambkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Penetration  Testing  with  Kali  Linux  

0. -­‐  Penetration  Testing:  What  You  Should  Know


0.1  -­‐  About  Kali  Linux
0.2  -­‐  About  Penetration  Testing
0.3  -­‐  Legal
0.4  -­‐  The  megacorpone.com  Domain
0.5  -­‐  Offensive  Security  Labs
0.5.1  -­‐  VPN  Labs  Overview  
0.5.2  -­‐  Lab  Control  Panel  
0.5.3  -­‐  Reporting  

1. -­‐  Getting  Comfortable  with  Kali  Linux


1.1  -­‐  Finding  Your  Way  Around  Kali
1.1.1  -­‐  Booting  Up  Kali  Linux  
1.1.2  -­‐  The  Kali  Menu  
1.1.3  -­‐  Find,  Locate,  and  Which  
1.1.4  -­‐  Exercises  
1.2  -­‐  Managing  Kali  Linux  Services  
1.2.1  -­‐  Default  root  Password  
1.2.2  -­‐  SSH  Service  
1.2.3  -­‐  HTTP  Service  
1.2.4  -­‐  Exercises  
1.3  -­‐  The  Bash  Environment  
1.4  -­‐  Intro  to  Bash  Scripting  
1.4.1  -­‐  Practical  Bash  Usage  –  Example  1  
1.4.2  -­‐  Practical  Bash  Usage  –  Example  2  
1.4.3  -­‐  Exercises  

2. -­‐  The  Essential  Tools


2.1  -­‐  Netcat
2.1.1  -­‐  Connecting  to  a  TCP/UDP  Port  
2.1.2  -­‐  Listening  on  a  TCP/UDP  Port  
2.1.3  -­‐  Transferring  Files  with  Netcat  
2.1.4  -­‐  Remote  Administration  with  Netcat  
2.1.5  -­‐  Exercises  
2.2  -­‐  Ncat  
2.2.1  -­‐  Exercises  
2.3  -­‐  Wireshark  
2.3.1  -­‐  Wireshark  Basics  
2.3.2  -­‐  Making  Sense  of  Network  Dumps  
2.3.3  -­‐  Capture  and  Display  Filters  
2.3.4  -­‐  Following  TCP  Streams  
2.3.5  -­‐  Exercises  
2.4  -­‐  Tcpdump  
2.4.1  -­‐  Filtering  Traffic  
2.4.2  -­‐  Advanced  Header  Filtering  
2.4.3  -­‐  Exercises  

3. -­‐  Passive  Information  Gathering


A  Note  From  the  Author
3.1  -­‐  Open  Web  Information  Gathering
3.1.1  -­‐  Google  
3.1.2  -­‐  Google  Hacking  
3.1.3  -­‐  Exercises  
3.2  -­‐  Email  Harvesting  
3.2.1  -­‐  Exercise  
3.3  -­‐  Additional  Resources  
3.3.1  -­‐  Netcraft  
3.3.2  -­‐  Whois  Enumeration  
3.3.3  -­‐  Exercise  
3.4  -­‐  Recon-­‐ng  

4. -­‐  Active  Information  Gathering


4.1  -­‐  DNS  Enumeration
4.1.1  -­‐  Interacting  with  a  DNS  Server  
4.1.2  -­‐  Automating  Lookups  
4.1.3  -­‐  Forward  Lookup  Brute  Force  
4.1.4  -­‐  Reverse  Lookup  Brute  Force  
4.1.5  -­‐  DNS  Zone  Transfers  
4.1.6  -­‐  Relevant  Tools  in  Kali  Linux  
4.1.7  -­‐  Exercises  
4.2  -­‐  Port  Scanning  
A  Note  From  the  Author  
4.2.1  -­‐  TCP  CONNECT  /  SYN  Scanning  
4.2.2  -­‐  UDP  Scanning  
4.2.3  -­‐  Common  Port  Scanning  Pitfalls  
4.2.4  -­‐  Port  Scanning  with  Nmap  
4.2.5  -­‐  OS  Fingerprinting  
4.2.6  -­‐  Banner  Grabbing/Service  Enumeration  
4.2.7  -­‐  Nmap  Scripting  Engine  (NSE)    
4.2.8  -­‐  Exercises  
4.3  -­‐  SMB  Enumeration  
4.3.1  -­‐  Scanning  for  the  NetBIOS  Service  
4.3.2  -­‐  Null  Session  Enumeration  
4.3.3  -­‐  Nmap  SMB  NSE  Scripts  
4.3.4  -­‐  Exercises  
4.4  -­‐  SMTP  Enumeration  
4.4.1  -­‐  Exercise  
4.5  -­‐  SNMP  Enumeration  
A  Note  From  the  Author  
4.5.1  -­‐  MIB  Tree  
4.5.2  -­‐  Scanning  for  SNMP  
4.5.3  -­‐  Windows  SNMP  Enumeration  Example  
4.5.4  -­‐  Exercises  

5. -­‐  Vulnerability  Scanning


5.1  -­‐  Vulnerability  Scanning  with  Nmap  
5.2  -­‐  The  OpenVAS  Vulnerability  Scanner  
5.2.1  -­‐  OpenVAS  Initial  Setup  
5.2.2  -­‐  Exercises  

6. -­‐  Buffer  Overflows


6.1  -­‐  Fuzzing
6.1.1  -­‐  Vulnerability  History  
6.1.2  -­‐  A  Word  About  DEP  and  ASLR  
6.1.3  -­‐  Interacting  with  the  POP3  Protocol  
6.1.4  -­‐  Exercises  

7. -­‐  Win32  Buffer  Overflow  Exploitation


7.1  -­‐  Replicating  the  Crash
7.2  -­‐  Controlling  EIP
7.2.1  -­‐  Binary  Tree  Analysis  
7.2.2  -­‐  Sending  a  Unique  String  
7.2.3  -­‐  Exercises  
7.3  -­‐  Locating  Space  for  Your  Shellcode  
7.4  -­‐  Checking  for  Bad  Characters  
7.4.1  -­‐  Exercises  
7.5  -­‐  Redirecting  the  Execution  Flow  
7.5.1  -­‐  Finding  a  Return  Address  
7.5.2  -­‐  Exercises  
7.6  -­‐  Generating  Shellcode  with  Metasploit  
7.7  -­‐  Getting  a  Shell  
7.7.1  -­‐  Exercises  
7.8  -­‐  Improving  the  Exploit  
7.8.1  -­‐  Exercises  

8. -­‐  Linux  Buffer  Overflow  Exploitation


8.1  -­‐  Setting  Up  the  Environment
8.2  -­‐  Crashing  Crossfire
8.2.1  -­‐  Exercise  
8.3  -­‐  Controlling  EIP  
8.4  -­‐  Finding  Space  for  Our  Shellcode  
8.5  -­‐  Improving  Exploit  Reliability  
8.6  -­‐  Discovering  Bad  Characters  
8.6.1  -­‐  Exercises  
8.7  -­‐  Finding  a  Return  Address  
8.8  -­‐  Getting  a  Shell  
8.8.1  -­‐  Exercise  

9. -­‐  Working  with  Exploits


9.1  -­‐  Searching  for  Exploits
9.1.1  -­‐  Finding  Exploits  in  Kali  Linux  
9.1.2  -­‐  Finding  Exploits  on  the  Web  
9.2  -­‐  Customizing  and  Fixing  Exploits  
9.2.1  -­‐  Setting  Up  a  Development  Environment  
9.2.2  -­‐  Dealing  with  Various  Exploit  Code  Languages  
9.2.3  -­‐  Exercises  

10. -­‐  File  Transfers


10.1  -­‐  A  Word  About  Anti  Virus  Software
10.2  -­‐  File  Transfer  Methods
10.2.1  -­‐  The  Non-­‐Interactive  Shell  
10.2.2  -­‐  Uploading  Files  
10.2.3  -­‐  Exercises  

11. -­‐  Privilege  Escalation


11.1  -­‐  Privilege  Escalation  Exploits
11.1.1  -­‐  Local  Privilege  Escalation  Exploit  in  Linux  Example  
11.1.2  -­‐  Local  Privilege  Escalation  Exploit  in  Windows  Example  
11.2  -­‐  Configuration  Issues  
11.2.1  -­‐  Incorrect  File  and  Service  Permissions  
11.2.2  -­‐  Think  Like  a  Network  Administrator  
11.2.3  -­‐  Exercises  

12. -­‐  Client  Side  Attacks


12.1  -­‐  Know  Your  Target
12.1.1  -­‐  Passive  Client  Information  Gathering  
12.1.2  -­‐  Active  Client  Information  Gathering  
12.1.3  -­‐  Social  Engineering  and  Client  Side  Attacks  
12.1.4  -­‐  Exercises  
12.2  -­‐  MS12-­‐037-­‐  Internet  Explorer  8  Fixed  Col  Span  ID  
12.2.1  -­‐  Setting  up  the  Client  Side  Exploit  
12.2.2  -­‐  Swapping  Out  the  Shellcode  
12.2.3  -­‐  Exercises  
12.3  -­‐  Java  Signed  Applet  Attack  
12.3.1  -­‐  Exercises  

13. -­‐  Web  Application  Attacks


13.1  -­‐  Essential  Iceweasel  Add-­‐ons
13.2  -­‐  Cross  Site  Scripting  (XSS)
13.2.1  -­‐  Browser  Redirection  and  IFRAME  Injection  
13.2.2  -­‐  Stealing  Cookies  and  Session  Information  
13.2.3  -­‐  Exercises  
13.3  -­‐  File  Inclusion  Vulnerabilities  
13.3.1  -­‐  Local  File  Inclusion  
13.3.2  -­‐  Remote  File  Inclusion  
13.4  -­‐  MySQL  SQL  Injection  
13.4.1  -­‐  Authentication  Bypass  
13.4.2  -­‐  Enumerating  the  Database  
13.4.3  -­‐  Column  Number  Enumeration  
13.4.4  -­‐  Understanding  the  Layout  of  the  Output  
13.4.5  -­‐  Extracting  Data  from  the  Database  
13.4.6  -­‐  Leveraging  SQL  Injection  for  Code  Execution  
13.5  -­‐  Web  Application  Proxies  
13.5.1  -­‐  Exercises  
13.6  -­‐  Automated  SQL  Injection  Tools  
13.6.1  -­‐  Exercises  

14. -­‐  Password  Attacks


14.1  -­‐  Preparing  for  Brute  Force
14.1.1  -­‐  Dictionary  Files  
14.1.2  -­‐  Key-­‐space  Brute  Force  
14.1.3  -­‐  Pwdump  and  Fgdump  
14.1.4  -­‐  Windows  Credential  Editor  (WCE)  
14.1.5  -­‐  Exercises  
14.1.6  -­‐  Password  Profiling  
14.1.7  -­‐  Password  Mutating  
14.2  -­‐  Online  Password  Attacks  
14.2.1  -­‐  Hydra,  Medusa,  and  Ncrack  
14.2.2  -­‐  Choosing  the  Right  Protocol:  Speed  vs.  Reward  
14.2.3  -­‐  Exercises  
14.3  -­‐  Password  Hash  Attacks  
14.3.1  -­‐  Password  Hashes  
14.3.2  -­‐  Password  Cracking  
14.3.3  -­‐  John  the  Ripper  
14.3.4  -­‐  Rainbow  Tables  
14.3.5  -­‐  Passing  the  Hash  in  Windows  
14.3.6  -­‐  Exercises  

15. -­‐  Port  Redirection  and  Tunneling


15.1  -­‐  Port  Forwarding/Redirection
15.2  -­‐  SSH  Tunneling
15.2.1  -­‐  Local  Port  Forwarding  
15.2.2  -­‐  Remote  Port  Forwarding  
15.2.3  -­‐  Dynamic  Port  Forwarding  
15.3  -­‐  Proxychains  
15.4  -­‐  HTTP  Tunneling  
15.5  -­‐  Traffic  Encapsulation  
15.5.1  -­‐  Exercises  

16. -­‐  The  Metasploit  Framework


16.1  -­‐  Metasploit  User  Interfaces
16.2  -­‐  Setting  up  Metasploit  Framework  on  Kali
16.3  -­‐  Exploring  the  Metasploit  Framework
16.4  -­‐  Auxiliary  Modules
16.4.1  -­‐  Getting  Familiar  with  MSF  Syntax  
16.4.2  -­‐  Metasploit  Database  Access  
16.4.3  -­‐  Exercises  
16.5  -­‐  Exploit  Modules  
16.5.1  -­‐  Exercises  
16.6  -­‐  Metasploit  Payloads  
16.6.1  -­‐  Staged  vs.  Non-­‐Staged  Payloads  
16.6.2  -­‐  Meterpreter  Payloads  
16.6.3  -­‐  Experimenting  with  Meterpreter  
16.6.4  -­‐  Executable  Payloads  
16.6.5  -­‐  Reverse  HTTPS  Meterpreter  
16.6.6  -­‐  Metasploit  Exploit  Multi  Handler  
16.6.7  -­‐  Revisiting  Client  Side  Attacks  
16.6.8  -­‐  Exercises  
16.7  -­‐  Building  Your  Own  MSF  Module  
16.7.1  -­‐  Exercise  
16.8  -­‐  Post  Exploitation  with  Metasploit  
16.8.1  -­‐  Meterpreter  Post  Exploitation  Features  
16.8.2  -­‐  Post  Exploitation  Modules  

17. -­‐  Bypassing  Antivirus  Software


17.1  -­‐  Encoding  Payloads  with  Metasploit
17.2  -­‐  Crypting  Known  Malware  with  Software  Protectors
17.3  -­‐  Using  Custom/Uncommon  Tools  and  Payloads  
17.4  -­‐  Exercise  

18. -­‐  Assembling  the  Pieces:  Penetration  Test  Breakdown


18.1  -­‐  Phase  0  –  Scenario  Description
18.2  -­‐  Phase  1  –  Information  Gathering
18.3  -­‐  Phase  2  –  Vulnerability  Identification  and  Prioritization
18.3.1  -­‐  Password  Cracking  
18.4  -­‐  Phase  3  –  Research  and  Development  
18.5  -­‐  Phase  4  –  Exploitation  
18.5.1  -­‐  Linux  Local  Privilege  Escalation  
18.6  -­‐  Phase  5  –  Post-­‐Exploitation  
18.6.1  -­‐  Expanding  Influence  
18.6.2  -­‐  Client  Side  Attack  Against  Internal  Network  
18.6.3  -­‐  Privilege  Escalation  Through  AD  Misconfigurations  
18.6.4  -­‐  Port  Tunneling  
18.6.5  -­‐  SSH  Tunneling  with  HTTP  Encapsulation  
18.6.6  -­‐  Looking  for  High  Value  Targets  
18.6.7  -­‐  Domain  Privilege  Escalation  
18.6.8  -­‐  Going  for  the  Kill  

You might also like