OSINT cli
Project description
bevigil-cli
This package provides a unified command line interface and python library for using BeVigil OSINT API.
Getting Started
Installation
The safest way to install the BeVigil OSINT CLI is to use pip:
$ pip3 install bevigil-cli
If you already have the bevigil-cli package installed and want to upgrade to the latest version, you can run:
$ pip3 install --upgrade bevigil-cli
This will install the bevigil-cli package as well as all dependencies.
Usage
Initialization
Before using the bevigil-cli to extract assets, you need to configure your api key.
You can do this using the init
command:
$ bevigil-cli init --api-key <API_KEY>
To get an API key, you can register at BeVigil's website
Enumeration
Once the API key is configured, you can request BeVigil's OSINT API for different types of assets. The enum
command consists of subcommands to enumerate different assets collected by BeVigil OSINT API. Following are all the supported subcommands under enum
group including their options.
Enumerate assets using BeVigil OSINT API
Options:
-h, --help Show this message and exit.
Commands:
hosts Request hosts present in an android package
packages Request packages associated associated with a domain/subdomain
params Request params associated with an android package
s3 Request S3 buckets associated with a package or a keyword
subdomains Request subdomains associated with a domain
urls Request URLs associated with a domain
wordlist Request a wordlist for a package
Commands Examples
wordlist
To request a wordlist crafted from an android pacakge:
$ bevigil-cli enum wordlist --package "com.whatsapp"
{
"package_id": "com.whatsapp",
"raw_wordlist": [
"header.json",
"content.json",
"change_number_contacts.json",
"manifest.json",
"client_search.php",
"metadata.json",
"verification.php",
"debuginfo.json",
"payments_error_map.json",
"ephemeral_settings_lottie_animation.json",
"/DCIM/Camera",
"/native-libs/",
"/timer/stop:",
"/cgroup",
"/bg_non_interactive",
"/dev/null",
]
}
subdomains
To request subdomains associated with a domain
$ bevigil-cli enum subdomains --domain "dreamplug.in"
{
"domain": "dreamplug.in",
"subdomains": [
"app-webview.dreamplug.in",
"webview-prod.dreamplug.in",
"merchant-app-prod.dreamplug.in",
"app-prod.dreamplug.in"
]
}
hosts
To request all the hostnames extracted from an android package
$ bevigil-cli enum hosts --package "com.whatsapp"
{
"package_id": "com.whatsapp",
"hosts": [
"faq.whatsapp.com",
"play.google.com",
"crashlogs.whatsapp.net",
"www.whatsapp.com",
"xmlpull.org",
"wa.me",
"static.whatsapp.net",
"ns.adobe.com",
"maps.instagram.com",
"expresswifi.com",
"graph.facebook.com",
"www.facebook.com",
"whatsapp.com",
"www.messenger.com",
"maps.google.com",
]
}
packages
To request all the packages associated with a domain or subdomain. There is a distinction between domain and subdomain in this command. So the appropriate flag should be used depending upon the type of input. This command returns all the packages that contains an occurence of the input domain/subdomain.
- Requesting packages for domain
$ bevigil-cli enum packages --domain "dreamplug.in"
- Requesting packages for subdomain
$ bevigil-cli enum packages --subdomaindomain "itunes.apple.com"
{
"domain": "dreamplug.in",
"packages": [
{
"package_id": "com.dreamplug.androidapp",
"app_name": "CRED: Credit Card Bills & More",
"app_version": "2.1.41.13"
},
{
"package_id": "com.dreamplug.credmerchant",
"app_name": "Partner Merchant App",
"app_version": "1.0.15"
}
]
}
params
To request all the parameters associated with an android package
$ bevigil-cli enum params --package "com.whatsapp"
{
"package_id": "com.whatsapp",
"url_params": {
"id": [
"com.whatsapp.wallpaper"
],
"fields": [
"base_url,static_base_url,osm_config,url_overr..."
],
"cat": [
"all"
],
"phone": [
"%s"
],
"text": [
"%s"
],
"q": [
"WAStickerApps"
],
"c": [
"apps"
],
"product_type": [
"payments_p2p_fbpay"
],
"india": [
"1"
]
}
}
s3
To request all the S3 buckets associated with a package name or a specific keyword.
- Requesting s3 data associated with an android package
$ bevigil-cli enum s3 --package "com.example.app"
- Requesting s3 data based on a keyword
$ bevigil-cli enum s3 --keyword "healthcare"
{
"keyword": "healthcare",
"s3_buckets": [
"https://s3-ap-southeast-1.amazonaws.com/upay-pub-assets/merchant/logo/ceylinco-healthcare.png",
"https://s3.ap-south-1.amazonaws.com/medgreenhealthcarelive/",
"https://med360.s3.amazonaws.com/prod/cuc/healthcare_service/cuc_default.jpg",
"https://healthcare-lp-537983768107.s3-ap-northeast-1.amazonaws.com/webview/terms/arida.html",
"https://healthcare-lp-537983768107.s3-ap-northeast-1.amazonaws.com/webview/arida_use_guide/index.html",
]
}
urls
To request all the parameters associated with an android package
$ bevigil-cli enum urls --domain "example.com"
{
"domain": "example.com",
"urls": [
"http://example.com#optional",
"http://example.com/ANamespace\\",
"http://example.com/wrapperA-linear-clicktracking3",
"http://example.com/wrapperB-linear-progress-60%",
"https://example.com:8080/somewhere/over/the/rainbow",
"https://www.example.com/resultadotpvzaragoza/prueba",
"http://example.com/wrapperB-linear-clickthrough",
]
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file bevigil-cli-1.0.4.tar.gz
.
File metadata
- Download URL: bevigil-cli-1.0.4.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.7.1 requests/2.27.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d3e491d4585b025e06d01a822787a1238c0299bf301348a325716f77160d992 |
|
MD5 | a53bd8dbabd6a2b4d5d301e23d13edff |
|
BLAKE2b-256 | be39e01e3ba235a151a372e06e80448d6a5ea5e21ce7ad804116f1d290194e34 |