Skip to main content

Networking APIs

The artemis API allows a user to make HTTP network requests using the reqwest crate. It can be used to interact with external services or services that expose an API.

request(client, body) -> ClientResponse | HttpError

Make a very simple GET or POST request to the provided URL. You may specify an optional body.

The body must be in raw bytes if provided. This function is async

ParamTypeDescription
clientClientRequestClientRequest object
bodyUint8ArrayOptional body to send with request

VirusTotal Class

A very basic class to help interact with the VirusTotal API using the JS HTTP client. Can be used to check VT for any additional data on hashes. Requires an API key.

warning

DO NOT use this to lookup hashes for your entire filesystem!

Your key or IP will be blocked if you do!

lookupHash(hash) -> VTResponse | HttpError

Lookup a MD5, SHA1, or SHA256 hash on VirusTotal. This function is async

ParamTypeDescription
hashstringMD5, SHA1, or SHA256 hash

lookupDomain(domain) -> VTResponse | HttpError

Lookup a domain on VirusTotal. This function is async

ParamTypeDescription
domainstringDomain to submit

lookupIP(ip) -> VTResponse | HttpError

Lookup an IP on VirusTotal. This function is async

ParamTypeDescription
ipstringIP to submit

checkEolStatus(name, version) -> EolStatus | HttpError

Check software status at https://endoflife.date. This can be used to determine if installed software is still supported. Only the name of the software is submitted to https://endoflife.date.

ParamTypeDescription
namestringSoftware name
versionstringSoftware version

lookupExtension(id, version, browser) -> CrxResponse | HttpError

Lookup browser extension reports on https://crxcavator.io. Will submit the extension ID and version to https://crxcavator.io.

ParamTypeDescription
idstringExtension ID
versionstringExtension version
browserBrowserBrowser associated with the extension

circluHashlookup(hashes, hash_type) -> ashlookupResponse | HashlookupResponse[] | HttpError

Check hash against the Cirlu Hashlookup service (https://www.circl.lu/services/hashlookup/). This checks hashes aginst known files from public respositories. Hashlookup includes hashes from:

  • Common Windows 10 and Windows 11 build (French, Dutch, German, UK, US)
  • NIST NSRL - All RDS hash sets including current, modern, android, iOS and legacy + SHA256 mapping.
  • Ubuntu packages distribution
  • CentOS core OS distribution
  • Fedora project EPEL repository
  • Kali linux packages distribution
  • OpenSUSE distribution packages
  • OpenBSD binary tar.gz distribution
  • CDNJS
  • Snap public repository
ParamTypeDescription
hashesstring or string[]MD5, SHA1, or SHA256 hash to submit. You may not submit an array of SH256 hashes
hash_typeHashTypeThe hash type to submit