This repository holds data of all the user agents in the user_agents.json
file, which can be used directly with any tool that can parse json format.
download the repo to update the user-agent data by running ua-fuzz-lib.py
and edit the file per the fields you would like to add or remove.
This dictionary of useragents was built to provide as input to Proxy_Bypass vulnerability research tool to use the user-agents.json
file as input for fuzzing proxies.
As a PoC have provided the ua-stats.py
script which draw various statistics out of the user-agents.json
file as input
🎯 Primary:
- The User Agent Dict python script is designed to scrape from useragentstring.com
- To use as Fuzzing library of user-agents used for vulnerability research tools (.i.e) Proxy_Bypass
- Organize the data into dictionaries, for faster access (mimicing hashmaps)
🚀 Secondary:
- Identify user agent groups based on specified conditions.
- High used vs low used user-agents to choose for fuzzing
- Display statistics about general and mobile user agents.
- Provide options for data visualization using pie charts, word clouds, and more.
-
Installation: Clone this repository to your local machine.
-
Setup: Install the required libraries using the following command:
pip3 install -r requirements.txt
-
Run the Script: Open a terminal and navigate to the project directory. Run the script using the following command:
python3 ua-fuzz-lib.py
If you would like to print on screen
> python3 ua-fuzz-lib.py
Do you want to print the data on the screen? (yes/no): yes
[
{
"title": "ABrowse 0.6",
"group": "ABrowse",
"id": "ua-1",
"user-agent": "Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)",
"Host": "General"
},
.
.
.
(output Truncated)
.
.
{
"title": "WDG_Validator 1.6.2",
"group": "WDG_Validator",
"id": "ua-11256",
"user-agent": "WDG_Validator/1.6.2",
"Host": "Mobile"
}
]
If you would like to update the user_agents.json
file
Do you want to update the JSON file? (yes/no): yes
[+] General User Agents: 10627
[+] Mobile User Agents: 629
[+] Total User Agents: 11256
[+] JSON file updated successfully.
[!] No new user-agents found.
As a PoC, have added a basic statistics deriving script ua-stats.py
that uses the user_agents.json
as input file.
ua-stats.py
script will prompt you to interactively choose from various options, such as viewing pie charts and generating word clouds from the user_agents.json
data.
-
Run the Script: Open a terminal and navigate to the project directory. Run the script using the following command:
python3 ua-stats.py
> python3 ua-stats.py
Select an option:
1. Pie chart for Mobile User Agents (Count < 10)
2. Pie chart for Mobile User Agents (10 <= Count < 500)
3. Pie chart for General User Agents (10 <= Count < 50)
4. Pie chart for General User Agents (50 <= Count < 500)
5. Pie chart for General User Agents (Count >= 500)
6. Word Cloud for Mobile User Agent Group Names
7. Word Cloud for General User Agent Group Names
8. Exit
Enter your choice (1/2/3/4/5/6/7/8):
This is only a PoC to use of using the json file data, there could be more analysis you could think of with this data. 😀
Few Samples Below
Mobile
General
The script may require an internet connection to retrieve data from the specified URL. If you encounter any issues or have questions, feel free to open an issue in this repository.
This project is licensed under the GPL 3.0 License - see the LICENSE file for details.