PentesterLab Bootcamp: Everything you need to get started in Infosec

Bootcamp provides a learning path to get into security and especially web penetration testing.
This course is a list of things to read and do. No solutions are provided since it is, in my opinion, the best and only way to learn. If you don't manage to get one of the items done, just try harder. Spend more time googling until you find the solution. Finding something by yourself is the best way to remember it.

1

Linux and Scripting!

Reading list:


Hands on:

  • Install Linux: Retrieve a virtualisation system (VirtualBox, VM player) and install Linux. Use a traditional distribution like Ubuntu not a security related one.
  • Learn the basics of a scripting language: Pick between Ruby (Try Ruby), Python (Online) or Perl and learn its syntax and data types. You will need it to keep going.
2

HTTP

Reading list:


Hands on:

  • Install Apache inside your vm, change the home page of the hosted site using vim. Access this page in your browser (on the host).
  • Change your host file to access the Linux system under the following names: vulnerable.
  • Write an HTTP client to retrieve the home page of your site using an http library (for example net/http in ruby).
  • Write an HTTP client to retrieve the home page of your site using a socket.
  • Download Burp Suite (free version) and visit a website and see what requests are sent and what responses are received.
3

PHP and DNS

Reading list:


Hands on:

  • PHP basics:
    • Install PHP in your virtual machine (using your previous Apache installation), write a script that echoes back a parameter in the URL. For example, accessing http://vulnerable/hello.php?name=Louis will return "Hello Louis".
    • Install Mysql and create a script that retrieves information from it, like article.php?id=1 returns a book and article.php?id=2 returns a computer.
    • Create a page that sends data to itself using a POST request.
  • DNS and whois:
    • Install the command line tool dig in your vm.
    • Find what name servers are used by PentesterLab, find what Mail servers are used by pentesterlab and find the Ip address of www.pentesterlab.com
    • Obtain information about pentesterlab.com using the whois tool.
4

SSL/TLS

Reading list:


Hands on:

  • Setup SSL:
    • enable HTTPs on your web server
    • make sure you disabled all the weak ciphers.
  • Play with SSL:
    • write a SSL client using an HTTP library.
    • write a SSL client using a socket.
    • acces your SSL server with your previous HTTP script and socat to do the connection socket<->ssl-socket.
5

SQL injection & Local File Include

Reading list:


Hands on:

6

More SQL Injections

Reading list:


Hands on:

7

FTP and Traffic analysis

Reading list:


Hands on:

  • Install and use Wireshark: inspect the traffic send by your HTTP client (use "Follow TCP stream) and HTTPs client (check the SSL handshake)
  • FTP:
    • Install a FTP server on your system:
    • Write a FTP client using a socket
8

Linux Review and Code Execution

Reading list:


Hands on:

9

HTTP Server and Firewall

Reading list:


Hands on:

  • HTTP server
    • Write a HTTP server (use fork to handle more than one connection)
    • Connect to your HTTP server with your browser and check the requests done by your browser
  • Iptables
    • If enabled, disable iptables in your vm
    • Use iptables to block ICMP requests, test if it works using ping
10

Nmap and crypto attacks

Reading list:


Hands on:

  • Nmap
    • Use Nmap to find the open ports on your VM.
    • Use Nmap to find the open ports on your VM while blocking ICMP using iptables.
    • Use iptables to close one of the open ports, check that it works using Nmap.
  • Find a local security meetup (Ruxmon, 2600...) and go there
  • Follow CVE-2008-1930: Wordpress 2.5 Cookie Integrity Protection Vulnerability (read the course and test on the ISO)
11

Wifi

Reading list:


Hands on:

12

Linux Exploitation

Reading list:


Hands on:

13

SSL Pinning and Linux Exploitation

Reading list:


Hands on:

14

Web For Pentester

Reading list:


Hands on:

15

Web For Pentester II<

Reading list:


Hands on: