Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
github.com/WhoisFreaks/whoisfreaks
A tool in Go Lang to utilize Whoisfreaks' services like whois, DNS, SSL and Domain Availability api.
For Installation go must be installed in your machine;
go get -u github.com/WhoisFreaks/whoisfreaks
OR
go install github.com/WhoisFreaks/whoisfreaks
if you want to build on your own you can follow this;
git clone https://github.com/WhoisFreaks/whoisfreaks.git
go to the cloned directory and build the project using;
go build
and move the binary to the your machine's go path. Note: After Installation you can use following guide to perform any sort of lookup.
You can use the services using command line as well as SDK.
For utilizing whoisfreaks' services you must sign up and get a API_KEY and then add that key to your machine which will be used for authentication.
export WHOISFREAKS_API_KEY="..."
With whoisfreaks's Whois tool you can perform;
For live whois lookup you can use;
whoisfreaks -whois -live -domain whoisfreaks.com
to perform bulk live lookup you can use following code where you will provide multiple domains that are comma separated.
whoisfreaks -whois -live -bulk -domains whoisfreaks.com,ipgeolocation.io
Note: Maximum 100 domains will be served if you want to perform bulk lookup with more then 100 domains you can visit BULK WHOIS LOOKUP.
For historical whois lookup you can use;
whoisfreaks -whois -historical -domain whoisfreaks.com
For reverse whois lookup based on keyword you can use;
whoisfreaks -whois -reverse -keyword whoisfreaks
For reverse whois lookup based on owner name you can use;
whoisfreaks -whois -reverse -owner ejaz_ahmed
For reverse whois lookup based on company name you can use;
whoisfreaks -whois -reverse -company jfreak
For reverse whois lookup based on email you can use;
whoisfreaks -whois -reverse -email ejaz_ahmed@outlook.com
with any of the above reverse queries you can use some additional flags like;
-mini
to get a mini whois response that contains create_date, update_date, expiry_date and few more.-page n
to get control over pages if there are more then 100 records as each page contains 100 records. By default you will get first page.With whoisfreaks' domain availability lookup tool you can check for any domain if it is available for registration or not. You can use following;
whoisfreaks -domainAvailability -domain whoisfreaks.com
-sug
to get default five suggestions.-count
if you want any number of suggestions but greater then five.similarly, to perform bulk Domain availability lookup you can use;
whoisfreaks -domainAvailability -bulk -domains whoisfreaks.com,ipgeolocation.io
Note: suggestions flag is only available with single domain availability lookup.
With whoisfreaks's DNS tool you can perform;
8.8.8.8
for reverse A records and mx.zoho.com
for reverse mx records.For live DNS lookup you can use following;
whoisfreaks -dns -live -domain whoisfreaks.com -dnsType all
-dnsType a
for A records, if you want any other record use name of that record. If you want multiple use a comma separated list like -dnsType a,mx,ns
For historical DNS lookup you can use;
whoisfreaks -dns -historical -domain whoisfreaks.com -dnsType all
-dnsType a
for A records, if you want any other record use name of that record. If you want multiple use a comma separated list like -dnsType a,mx,ns
For reverse DNS lookup based on specific dns Record you can use;
whoisfreaks -dns -reverse -value 8.8.8.8 -dnsType a
-page n
to get control over pages if there are more then 100 records as each page contains 100 records. By default you will get first page.SSL cert lookup tool allows you to fetch Secure Sockets Layer (SSL) certificate along with its complete SSL cert chain.
For live SSL lookup you can use following;
whoisfreaks -ssl -live -domain whoisfreaks.com
some other flags are also provided like;
-chain
to get chain of all domain ssl certificates sorted from end-user to root.-raw
to get the raw openssl response of the domain.This package is for performing any type of WHOIS lookup, such as live, historical, or reverse lookups.
WHOIS Authentication Setup
WHOIS Bulk Live Lookup
WHOIS Historical Lookup
WHOIS Live Lookup
WHOIS Reverse Lookup
WHOIS Mini Reverse Lookup
func SetAPIKey(key string)
SetAPIKey sets the global API key to the specified value. It allows you to configure the API key used for authentication in your application.
Example usage:
whois.SetAPIKey("your_api_key_here")
Parameters:
func GetBulkLiveResponse(domains []string) (*modal.BulkDomainInfo, *modal.Error)
GetBulkLiveResponse retrieves live WHOIS information for multiple domains in bulk using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
whois.SetAPIKey("your_api_key_here")
domains := []string{"example1.com", "example2.com", "example3.com"}
bulkDomainInfo, err := GetBulkLiveResponse(domains)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Bulk Live Domain Info:", bulkDomainInfo)
func GetHistoricalResponse(domain string) (*modal.HistoricalDomainInfo, *modal.Error)
GetHistoricalResponse retrieves historical WHOIS information using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
whois.SetAPIKey("your_api_key_here")
historicalInfo, err := whois.GetHistoricalResponse("example.com")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Historical Domain Info:", historicalInfo)
func GetLiveResponse(domain string) (*modal.DomainInfo, *modal.Error)
GetLiveResponse retrieves live WHOIS information for a specific domain using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
whois.SetAPIKey("your_api_key_here")
domainInfo, err := whois.GetLiveResponse("example.com")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Live Domain Info:", domainInfo)
func GetReverseResponse(keyword, email, company, owner, page string) (*modal.ReverseDomainInfo, *modal.Error)
GetReverseResponse performs a reverse whois lookup using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
whois.SetAPIKey("your_api_key_here")
reverseDomainInfo, err := whois.GetReverseResponse("example", "email@example.com", "", "", "1")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Reverse Domain Info:", reverseDomainInfo)
func GetReverseMiniResponse(keyword, email, company, owner, page string) (*modal.ReverseMiniDomainInfo, *modal.Error)
GetReverseMiniResponse performs a reverse whois lookup in mini mode using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
whois.SetAPIKey("your_api_key_here")
reverseMiniDomainInfo, err := whois.GetReverseMiniResponse("example", "email@example.com", "", "", "1")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Reverse Mini Domain Info:", reverseMiniDomainInfo)
This package is for performing any type of Domain Availability lookup.
Domain Availability Authentication Setup
Bulk Domain Availability Lookup
Domain Availability Check
Domain Availability Check and Suggestion
func SetAPIKey(key string)
SetAPIKey sets the global API key to the specified value. It allows you to configure the API key used for authentication in your application.
Example usage:
domainavailability.SetAPIKey("your_api_key_here")
Parameters:
func Bulk(domains []string) (*modal.BulkDomainAvailability, *modal.Error)
Bulk performs a bulk domain availability check using the WhoisFreaks API. It checks the availability of multiple domain names in bulk.
Parameters:
Returns:
Example usage:
domainavailability.SetAPIKey("your_api_key_here")
domains := []string{"example1.com", "example2.com", "example3.com"}
bulkDomainAvailability, err := domainavailability.Bulk(domains)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Bulk Domain Availability Info:", bulkDomainAvailability)
func Check(domain string) (*modal.DomainAvailability, *modal.Error)
Check performs a domain availability check using the WhoisFreaks API. It checks whether a specific domain name is available for registration.
Parameters:
Returns:
Example usage:
domainavailability.SetAPIKey("your_api_key_here")
domainAvailability, err := domainavailability.Check("example.com")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Domain Availability Info:", domainAvailability)
func CheckAndSuggest(domain string, sug bool, count string) (*modal.BulkDomainAvailability, *modal.Error)
CheckAndSuggest performs a domain availability check and suggests similar domain names using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
domainavailability.SetAPIKey("your_api_key_here")
bulkDomainAvailability, err := domainavailability.CheckAndSuggest("example.com", true, "5")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Bulk Domain Availability Info:", bulkDomainAvailability)
This package is for performing any type of DNS lookup, such as live, historical, or reverse lookups.
DNS Authentication Setup
DNS Historical Lookup
DNS Live Lookup
DNS Reverse Lookup
func SetAPIKey(key string)
SetAPIKey sets the global API key to the specified value. It allows you to configure the API key used for authentication in your application.
Example usage:
dns.SetAPIKey("your_api_key_here")
Parameters:
func GetHistoricalResponse(dnsType, domain, page string) (*modal.HistoricalDnsInfo, *modal.Error)
GetHistoricalResponse
performs a historical DNS lookup using the WhoisFreaks API. It retrieves historical DNS information for a specific domain and DNS type.
Parameters:
Returns:
Example Usage:
dns.SetAPIKey("your_api_key_here")
historicalDnsInfo, err := dns.GetHistoricalResponse("A", "example.com", "1")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Historical DNS Info:", historicalDnsInfo)
func GetLiveResponse(dnsType, domain string) (*modal.DNSInfo, *modal.Error)
GetLiveResponse
performs a live DNS lookup using the WhoisFreaks API. It retrieves real-time DNS information for a specific domain and DNS type.
Parameters:
Returns:
Example Usage:
dns.SetAPIKey("your_api_key_here")
dnsInfo, err := dns.GetLiveResponse("a", "example.com")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Live DNS Info:", dnsInfo)
func GetReverseResponse(dnsType, value, page string) (*modal.ReverseDnsInfo, *modal.Error)
GetReverseResponse
performs a reverse DNS lookup using the WhoisFreaks API.
Parameters:
Returns:
Example usages:
dns.SetAPIKey("your_api_key_here")
reverseDnsInfo, err := dns.GetReverseResponse("a", "8.8.8.8", "1")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Reverse DNS Info:", reverseDnsInfo)
dns.SetAPIKey("your_api_key_here")
reverseDnsInfo, err := dns.GetReverseResponse("mx", "mx.zoho.com", "1")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Reverse DNS Info:", reverseDnsInfo)
This package is for performing any type of SSL lookup.
SSL Authentication Setup
SSL Live Lookup
func SetAPIKey(key string)
SetAPIKey sets the global API key to the specified value. It allows you to configure the API key used for authentication in your application.
Example usage:
ssl.SetAPIKey("your_api_key_here")
Parameters:
func GetLiveResponse(domain string, chain bool, raw bool) (*modal.DomainSslInfo, *modal.Error)
GetLiveResponse retrieves live SSL information for a specific domain using the WhoisFreaks API.
Parameters:
Returns:
Example usage:
ssl.SetAPIKey("your_api_key_here")
sslInfo, err := ssl.GetLiveResponse("example.com", true, false)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println("Live SSL Info:", sslInfo)
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.