Nipper : Android App for Penetration Testers
- Android 3.0 or higher.
How To Use Nipper Toolkit Web Scan:
Nipper Download From Play Store
Learn Ethical Hacking and Penetration Testing Online
Learn ethical hacking, penetration testing, cyber security, best security and web penetration testing techniques from best ethical hackers in security field.
Nipper Download From Play Store
For Penetration testers Information gathering during a web application penetration test is one of the most important phases . DNS (Domain Name System) is very helpfull for gathering valuable information of your target. It is not unknown that NSLOOKUP is one of the Best OPEN SOURCE tools that come to a penetration testers rescue for DNS information gathering . Lets start with a practical analysis of a domain using NSLOOKUP .
Nslookup is a program to query Internet domain name servers. Nslookup has two modes: interactive and non-interactive. Interactive mode allows the user to query name servers for information about various hosts and domains or to print a list of hosts in a domain. Non-interactive mode is used to print just the name and requested information for a host or domain.
A Zone file is basically a text file present on the server hosting the domain that contains entries for different resource records. Each line is represented by a different record .In some cases these records may exceed one line and hence must be enclosed within a parantheses. Each zone file must start with a Start of Authority (SOA) record containing an authoritative nameserver for the domain (for e.g. ns1.google.com for google.com ) and an email address of someone responsible for the management of the nameserver.
Types of DNS RECORDS
SAMPLE DNS ZONE FILE
This file (pri.example.com) is the standard sample zone file .
Here are main components of the DNS Zone File :
Different types of Resource Records exist within a Zone file.
However we are going to discuss some of the important ones .
Using nslookup from commnd line
In windows just open the command prompt and type nslookup
In *nix bsed systems open the terminal window and type nslookup
I am more of an Open Source Lover so I ll engage on *nix systems for my tutorial .
bash$ /usr/etc/nslookup
Default Server: scitsc.ser.ac.uk Address: 134.220.4.1
> set q=A > ccub.ser.ac.uk. Server: scitsc.ser.ac.uk Address: 134.220.4.1
Name: ccub.ser.ac.uk Address: 134.220.1.20
> set q=CNAME > www.ser.ac.uk. Server: scitsc.ser.ac.uk Address: 134.220.4.1
www.ser.ac.uk canonical name = ccuf.ser.ac.uk > set q=MX > ser.ac.uk. Server: scitsc.ser.ac.uk Address: 134.220.4.1
ser.ac.uk preference = 1, mail exchanger = ser.ac.uk ser.ac.uk inet address = 134.220.1.12 > set q=HINFO > ccub.ser.ac.uk. Server: scitsc.ser.ac.uk Address: 134.220.4.1
ccub.ser.ac.uk CPU=SUN 690MP OS=Solaris 2.4 > set q=PTR > 12.1.220.134.in-addr.arpa Server: scitsc.ser.ac.uk Address: 134.220.4.1 12.1.220.134.in-addr.arpa host name = ccug.ser.ac.uk
Please Post in the comments section for any doubts .
Web Server Auditing Tutorial : WEBSHAG is a well known Web Server Auditing tool . It ships in with Kali linux and can be used for doing a variety of scans on the Web server when conducting a web application penetration testing . Webshag is a multi-threaded, multi-platform web server audit tool. Written in Python, it gathers commonly useful functionalities for web server auditing like website crawling, URL scanning or file fuzzing.
Here is a Link to the Webshag Official Page : Link
Here is a Link to Webshag source download Page : Link
Webshag can be used to scan a web server in HTTP or HTTPS, through a proxy and using HTTP authentication (Basic and Digest). In addition to that it proposes innovative IDS evasion functionalities aimed at making correlation between request more complicated (e.g. use a different random per request HTTP proxy server).
Penetration testers can use Webshag in two modes :
root@kali:~# webshag-cli -h Usage: webshag-cli [-U | [options] target(s)] Options: --version show program's version number and exit -h, --help show this help message and exit -U Update the URL scanner databases and exit -m MODULE Use MODULE [pscan|info|spider|uscan|fuzz]. (default: uscan) -p PORT Set target port to PORT. For modules uscan and fuzz PORT can be a list of ports [port1,port2,...]. (default: 80) -r ROOT Set root directory to ROOT. For modules uscan and fuzz ROOT can be a list of directories [/root1/,/root2/,...]. (default: /) -k SKIP *uscan only* Set a false positive detection string -s SERVER *uscan only* Bypass server detection and force server as SERVER -i SPIDER_INIT *spider) only* Set spider initial crawling page (default: /) -n FUZZ_MODE *fuzz only* Choose the fuzzing mode [list|gen]. (default: list) -e FUZZ_CFG *fuzz / list only* Set the fuzzing parameters for list mode. 11 = fuzz directories and files; 01 = fuzz files only; 10 = fuzz directories only; 00 = fuzz nothing. (default: 11) -g FUZZ_GEN *fuzz / gen only* Set the filename generator expression. Refer to documentation for syntax reference. (default: ) -x Export a report summarizing results. -o OUTPUT Set the format of the exported report. [xml|html|txt]. (default: html) -f OUTPUT_FILE Write report to FILE. (default: webshag_report.html)
Run a port scan (-m pscan) on the remote IP address (192.168.1.xxx):
root@kali:~# webshag-cli -m pscan 192.168.1.202 ~~~~~~~~~~~~~~~~~~~~~~~~~~ ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ % webshag 1.10 % Module: pscan % Host: 192.168.1.202 ~~~~~~~~~~~~~~~~~~~~~~~~~~ ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 192.168.1.202 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ % PORT % 22 (tcp) % SRVC % ssh % PROD % OpenSSH % SYST % Linux % PORT % 80 (tcp) % SRVC % http % PROD % Apache httpd % PORT % 9876 (tcp) % SRVC % http % PROD % Apache httpd ~~~~~~~~~~~~~~~~~~~~~~~~~~ ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
root@kali:~# webshag-gui
If you need a tutorial on how to install WPScan on your Linux Box (incase you are not using Kali linux).
WPScan is a black box WordPress vulnerability scanner that can be used to scan remote WordPress installations to find security issues. WPSCAN is a WORDPRESS vulenrability assessment tool and very usefull when penetration testing a wordpress website . WPSCAN comes preloaded in KALI Linux and easy to use when looking to find out the vulnerbilities in the wordpress website .
root@kali:~# wpscan --help _______________________________________________________________ __ _______ _____ \ \ / / __ \ / ____| \ \ /\ / /| |__) | (___ ___ __ _ _ __ \ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \ \ /\ / | | ____) | (__| (_| | | | | \/ \/ |_| |_____/ \___|\__,_|_| |_|
WordPress Security Scanner by the WPScan Team Version 2.6 Sponsored by Sucuri - https://sucuri.net @_WPScan_, @ethicalhack3r, @erwan_lr, pvdl, @_FireFart_ _______________________________________________________________
Help :
Some values are settable in a config file, see the example.conf.json
--update Update to the database to the latest version. --url | -u <target url> The WordPress URL/domain to scan. --force | -f Forces WPScan to not check if the remote site is running WordPress. --enumerate | -e [option(s)] Enumeration. option : u usernames from id 1 to 10 u[10-20] usernames from id 10 to 20 (you must write [] chars) p plugins vp only vulnerable plugins ap all plugins (can take a long time) tt timthumbs t themes vt only vulnerable themes at all themes (can take a long time) Multiple values are allowed : "-e tt,p" will enumerate timthumbs and plugins If no option is supplied, the default is "vt,tt,u,vp"
--exclude-content-based "<regexp or string>" Used with the enumeration option, will exclude all occurrences based on the regexp or string supplied. You do not need to provide the regexp delimiters, but you must write the quotes (simple or double). --config-file | -c <config file> Use the specified config file, see the example.conf.json. --user-agent | -a <User-Agent> Use the specified User-Agent. --cookie <String> String to read cookies from. --random-agent | -r Use a random User-Agent. --follow-redirection If the target url has a redirection, it will be followed without asking if you wanted to do so or not --batch Never ask for user input, use the default behaviour. --no-color Do not use colors in the output. --wp-content-dir <wp content dir> WPScan try to find the content directory (ie wp-content) by scanning the index page, however you can specified it. Subdirectories are allowed. --wp-plugins-dir <wp plugins dir> Same thing than --wp-content-dir but for the plugins directory. If not supplied, WPScan will use wp-content-dir/plugins. Subdirectories are allowed --proxy <[protocol://]host:port> Supply a proxy. HTTP, SOCKS4 SOCKS4A and SOCKS5 are supported. If no protocol is given (format host:port), HTTP will be used. --proxy-auth <username:password> Supply the proxy login credentials. --basic-auth <username:password> Set the HTTP Basic authentication. --wordlist | -w <wordlist> Supply a wordlist for the password brute forcer. --username | -U <username> Only brute force the supplied username. --usernames <path-to-file> Only brute force the usernames from the file. --threads | -t <number of threads> The number of threads to use when multi-threading requests. --cache-ttl <cache-ttl> Typhoeus cache TTL. --request-timeout <request-timeout> Request Timeout. --connect-timeout <connect-timeout> Connect Timeout. --max-threads <max-threads> Maximum Threads. --help | -h This help screen. --verbose | -v Verbose output. --version Output the current version and exit.
Well thats a lots of Options and might be confusing if you are a newbie to Wordress Penetration Testing .
Here is an easy example to start a scan on target wordpress website / Blog
wpscan --url www.example.com
Here are some more examples that might help you in getting started with the Vulnerability Scans on your target wordpress blogs :
Enumerate users
wpscan --url www.example.com --enumerate u
Enumerate installed themes
wpscan --url www.example.com --enumerate t
Enumerate installed plugins to find WordPress Vulnerabilities
wpscan --url www.example.com --enumerate p
Well these are some of the example scans . There is a lot of other options that can be used with WPScan and much more complex scans can be conducted with WPScan . Here is and example of scanning custom directories .
Scanning for custom content directory
wpscan -u www.example.com --wp-content-dir custom-content
root@kali:~# wpscan --url http://wordpress.local --enumerate p _______________________________________________________________ __ _______ _____ \ \ / / __ \ / ____| \ \ /\ / /| |__) | (___ ___ __ _ _ __ \ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \ \ /\ / | | ____) | (__| (_| | | | | \/ \/ |_| |_____/ \___|\__,_|_| |_|
WordPress Security Scanner by the WPScan Team Version 2.6 Sponsored by Sucuri - https://sucuri.net @_WPScan_, @ethicalhack3r, @erwan_lr, pvdl, @_FireFart_ _______________________________________________________________
[+] URL: http://wordpress.local/
[+] robots.txt available under: 'http://wordpress.local/robots.txt' [+] Interesting entry from robots.txt: http://wordpress.local/search [+] Interesting entry from robots.txt: http://wordpress.local/support/search.php [+] Interesting entry from robots.txt: http://wordpress.local/extend/plugins/search.php [+] Interesting entry from robots.txt: http://wordpress.local/plugins/search.php [+] Interesting entry from robots.txt: http://wordpress.local/extend/themes/search.php [+] Interesting entry from robots.txt: http://wordpress.local/themes/search.php [+] Interesting entry from robots.txt: http://wordpress.local/support/rss [+] Interesting entry from robots.txt: http://wordpress.local/archive/ [+] Interesting header: SERVER: nginx [+] Interesting header: X-FRAME-OPTIONS: SAMEORIGIN [+] Interesting header: X-NC: HIT lax 29849 [+] XML-RPC Interface available under: http://wordpress.local/xmlrpc.php
[+] WordPress version 4.2-alpha-31168 identified from rss generator
[+] Enumerating installed plugins
[+] We found 2166 plugins: ...
Please comment if you need further guidance with Scanning with WPScan .