https://github.com/mmpx12/netlas-go
netlas cli in go
https://github.com/mmpx12/netlas-go
go golang netlas-io pentest recon reconnaissance
Last synced: about 1 month ago
JSON representation
netlas cli in go
- Host: GitHub
- URL: https://github.com/mmpx12/netlas-go
- Owner: mmpx12
- Created: 2022-03-26T14:07:16.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2022-03-26T15:30:05.000Z (about 3 years ago)
- Last Synced: 2024-11-17T01:28:59.816Z (7 months ago)
- Topics: go, golang, netlas-io, pentest, recon, reconnaissance
- Language: Go
- Homepage:
- Size: 210 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-ip-search-engines - Netlas Go Library
README
# Netlas go
Search on https://netlas.io for domain, vulns, hosts with same favicon etc ...

## Build/Install
```sh
$ git clone https://github.com/mmpx12/netlas-go.git
$ cd netlas-go
$ make
$ sudo make install
# or
$ sudo make all
```You can also add completion with:
```sh
$ sudo make completion
```Prebuild binaries can also be found at the [releas page](https://github.com/mmpx12/netlas-go/releases/latest)
## Usage
```
Usage:
netlas [command]Available Commands:
completion Generate the autocompletion script for the specified shell
domain Search for domain
favicon Search from favicon
help Help about any command
init Save api key and server to file
profile Get profile info
query Search for custom query
vulns Search host by cveFlags:
-h, --help help for netlas
```## Init
`netlas init` will ask for server and api key and will save them to **$HOME/.netlas**.
This step is not mandatory since you still can pass api key via `-a|--api-key` flags.
#### example:
```
netlas init
init
? Netlas server (domain or ip) https://app.netlas.io
? Netlas api key: ********************************
✓ Configuration updated
```## Profile
Print information about profile
#### usage:
```
Get profile infoUsage:
netlas profile [flags]Flags:
-a, --api-key string Specify api key (overwrite config file)
-f, --format string Select output format (yaml/json) (default "yaml")
-h, --help help for profile
-n, --no-colors Disable colors
```## Domain
Search for domains/subdomains. By default it will parse the result. If you want to have full resulat, use the `-r|--raw` flag.
Without `-p|--page`, it will print the first page, use the flag for have more results.
You can use wildcard such as follows:
```sh
$ netlas domain -d "*.archlinux.fr"
...
$ netlas domain -d "archlinux.*"
```#### usage:
```
Search for domainUsage:
netlas domain [flags]Flags:
-a, --api-key string Specify api key (overwrite config file)
-d, --domain string Serch domain
-f, --format string Select output format (yaml/json) (default "json")
-h, --help help for domain
-n, --no-colors Disable colors
-p, --page int Page number (default 1)
-r, --raw-result Print raw results
```### Favicon
Search for ip/domain than have the same favicon.
You can use url (`-u|--url`) or a local file (`-F|--file`).#### usage:
```
Search from faviconUsage:
netlas favicon [flags]Flags:
-a, --api-key string Specify api key (overwrite config file)
-F, --file string Path of the favicon file
-f, --format string Select output format (yaml/json) (default "yaml")
-h, --help help for favicon
-n, --no-colors Disable colors
-r, --raw-result Print raw results
-u, --url string Url of the favicon
```#### example:
```sh
netlas favicon -u "https://cve.mitre.org/favicon.ico" -f json
``````json
[
{
"date": "2022-01-21",
"domain": null,
"ip": "137.220.40.246"
},
{
"date": "2022-01-21",
"domain": null,
"ip": "198.49.146.238"
},
{
"date": "2022-01-21",
"domain": [
"cveform.mitre.org"
],
"ip": "198.49.146.153"
},
{
"date": "2022-01-21",
"domain": [
"recommendationtracker.mitre.org",
"msm.mitre.org",
"cve.mitre.org",
"cce.mitre.org",
"cybox.mitre.org",
"makingsecuritymeasurable.mitre.org",
"oval.mitre.org",
"cme.mitre.org",
"taxii.mitre.org",
"capec.mitre.org",
"cpe.mitre.org",
"cee.mitre.org",
"stix.mitre.org",
"maec.mitre.org"
],
"ip": "198.49.146.233"
}
]
```## vulns
You can search host by cve from:
- cve id
- minimum cve score
- cve with exploit#### usage:
```
Search host by cveUsage:
netlas vulns [flags]Flags:
-a, --api-key string Specify api key (overwrite config file)
-i, --cve-id string Serch for cve id
-f, --format string Select output format (yaml/json) (default "json")
-x, --has-exploit Serch host with cve that have exploit
-h, --help help for vulns
-m, --min-score string Minium score of cve to search (default "0")
-n, --no-colors Disable colors
-p, --page int Page number (default 1)
-r, --raw-result Print raw results
```#### example:
Search for cve that have exploit and with a score higher than 9.5 on page 120
`netlas vulns -m "9.5" -x -p 120`
```json
[
{
"cve": [],
"ip": "192.188.53.113"
},
{
"cve": [
"CVE-2017-7269 (9.8)",
"CVE-2001-0500 (10.0)"
],
"ip": "192.190.252.93"
},
{
"cve": [
"CVE-2017-7679 (9.8)"
],
"ip": "192.190.239.163"
}
]
```## query
Search for custom query
#### usage:
```
Usage:
netlas query [flags]Flags:
-a, --api-key string Specify api key (overwrite config file)
-f, --format string Select output format (yaml/json) (default "json")
-h, --help help for query
-n, --no-colors Disable colors
-p, --page int Page number (default 1)
-d, --query string Serch domain
-r, --raw-result Print raw results
```