ua-tester Package Description
This tool is designed to automatically check a given URL using a list of standard and non-standard User Agent strings provided by the user (1 per line). The results of these checks are then reported to the user for further manual analysis where required.
Source: https://code.google.com/p/ua-tester/
ua-tester Homepage | Kali ua-tester Repo
- Author: Chris John Riley
- License: BSD
Tools included in the ua-tester package
ua-tester – User agent string tester
[email protected]:~# ua-tester
_/ _/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/
_/ _/ _/_/_/_/ _/_/_/ _/ _/_/_/ _/_/_/_/ _/ _/_/_/ _/_/_/_
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/
_/_/_/_/ _/ _/ _/ _/_/_/_/ _/_/_/_/ _/ _/_/_/_/ _/ _/ [v1.06]
_/ User-Agent Tester ↵
_/ AKA: Purple Pimp ↵
_/ ChrisJohnRiley ↵
_/ blog.c22.cc ↵
This tool is designed to automatically check a given URL using a list of standard and non-
standard User Agent strings provided by the user (1 per line).
The results of these checks are then reported to the user for further manual analysis where
required. Gathered data includes Response Codes, resulting URL in the case of a 30x response,
MD5 and length of response body, and select Server headers.
Results: When in non-verbose mode, only values that do not match the initial reference connection
are reported to the user. If no results are shown for a specific useragent then all results match
the initial reference connection. If you require a full output of all checks regardless of matches
to the reference, please use the verbose setting.
Output: [+] Added Headers, [-] Removed Headers, [!] Altered Headers, [ ] No Change
Usage .:
-u / --url Complete URL
-f / --file <Path to User Agent file> / If no file is provided, -d options must be present
-s / --single provide single user-agent string (may need to be contained within quotes)
-d / --default Select the UA String type(s) to check. Select 1 or more of the following ↵
catagories. (M)obile, (D)esktop, mis(C), (T)ools, (B)ots, e(X)treme [!])
-o / --output <Path to output file> CSV formated output (FILE WILL BE OVERWRITTEN[!])
-v / --verbose results (Displays full headers for each check) >> Recommended
--debug See debug messages (This isn't the switch you're looking for)
Example .:
./UATester.py -u www.example.com -f ./useragentlist.txt -v
./UATester.py -u https://www.wordpress.com
./UATester.py -u http://www.defaultserver.com -v --debug
./UATester.py -u facebook.com -v -d MDBX
./UATester.py -u https://www.google.com -s "MySpecialUserAgent"
./UATester.py -u blog.c22.cc -d MC -o ./output.csv
ua-tester Usage Example
Connect to the URL (-u http://192.168.1.202/joomla) and use mobile device User-Agent strings (-d M) to check for different content:
[email protected]:~# ua-tester -u http://192.168.1.202/joomla -d M
_/ _/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/ _/_/_/_/
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/
_/ _/ _/_/_/_/ _/_/_/ _/ _/_/_/ _/_/_/_/ _/ _/_/_/ _/_/_/_
_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/
_/_/_/_/ _/ _/ _/ _/_/_/_/ _/_/_/_/ _/ _/_/_/_/ _/ _/ [v1.06]
_/ User-Agent Tester ↵
_/ AKA: Purple Pimp ↵
_/ ChrisJohnRiley ↵
_/ blog.c22.cc ↵
[>] Performing initial request and confirming stability
[>] Using User-Agent string Mozilla/5.0
[ ] URL (ENTERED): http://192.168.1.202/joomla
[!] URL (FINAL): http://192.168.1.202/joomla/
[!] Response Code: 301 Moved Permanently
[ ] Date: Fri, 16 May 2014 20:25:31 GMT
[ ] Server: Apache/2.2.22 (Debian)
[ ] X-Powered-By: PHP/5.4.4-14+deb7u9
[ ] Set-Cookie: c8af288c8bfe7241582aabcb2906ad43=kj3bm3h7vp9j4imdfi17h8c081; path=/; HttpOnly
[ ] P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"
[ ] Expires: Mon, 1 Jan 2001 00:00:00 GMT
[ ] Last-Modified: Fri, 16 May 2014 20:25:31 GMT
[ ] Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
[ ] Pragma: no-cache
[ ] Vary: Accept-Encoding
[ ] Content-Length: 6005
[ ] Connection: close
[ ] Content-Type: text/html; charset=utf-8
[ ] Data (MD5): d9febdb6fdb1874beae05dcbf410a95d
[1] Pass
[2] Pass
[3] Pass
[>] URL appears stable. Beginning test
[>] Using DEFAULT User-Agent Strings
[>] Using Mobile User-Agent Strings
[>] Output: [+] Added Headers, [-] Removed Headers, [!] Altered Headers, [ ] No Change
[>] User-Agent String : Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko)
Version/3.0 Mobile/1A543a Safari/419.3
[!] Last-Modified: Fri, 16 May 2014 20:25:38 GMT
[>] User-Agent String : Mozilla/5.0 (iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10
(KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10
[!] Last-Modified: Fri, 16 May 2014 20:25:38 GMT
[>] User-Agent String : Mozilla/5.0 (Linux; U; Android 2.1-update1; en-at; HTC Hero Build/ERE27)
AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17
[!] Last-Modified: Fri, 16 May 2014 20:25:38 GMT
[>] User-Agent String : jBrowser-WAP
[!] Last-Modified: Fri, 16 May 2014 20:25:38 GMT
[>] User-Agent String : Nokia7650/1.0 Symbian-QP/6.1 Nokia/2.1
[!] Last-Modified: Fri, 16 May 2014 20:25:38 GMT
[>] That's all folks... Fo' Shizzle!