Skip to main content

Python library to access the RST Cloud API.

Project description

rstapi-python

Python 3 library for using the various threat intelligence RST Cloud APIs:

  • RST Threat Feed
  • RST Report Hub
  • RST Threat Library (threat objects: intrusion-sets, malware, tools, campaigns)
  • RST Noise Control
  • RST IoC Lookup
  • RST Whois API
  • RST Scan API (Cobalt Strike beacon, SSL certificate, favicon, HTML body/JS, screenshots)
  • Connectivity (/auth/check — API key validation and request quota / remaining usage)

Installation

To install with pip run pip install rstapi

Usage

See GitHub source https://github.com/rstcloud/rstapi-python for further details and example usage. The file test.py includes examples.

See RST Cloud API docs here: https://www.rstcloud.com/api-docs/

An API token is required to use the RST Cloud API. You can request a RST Cloud API token by contacting trial@rstcloud.net, generating it online https://www.rstcloud.com/#free-trial, or reaching out your account representative.

The better way is to setup an environment variable RST_API_KEY and call it without specifing the key in the code.

import rstapi
c = rstapi.ioclookup()
c.GetIndicator("1.1.1.1")

However, you can explicitly pass a token in the api client constructor:

import rstapi
c = rstapi.ioclookup(APIKEY="YOUR_API_KEY")
c.GetIndicator("1.1.1.1")

Products

RST Threat Feed

A comprehensive threat intel feed of indicators (IP, Domain, URL, Hash) with their relationships to malware, TTPs, tools, threat groups, sectors, CVE, and other objects.

Compiled from over 260 sources, including Twitter, Telegram, online sandboxes (Any.Run, Hybrid Analysis, VMRay, etc.), threat reports, CERTs, malware research sites, GitHub, pastebin, closed sources and our global RST Honeypot network.

Read more: https://www.rstcloud.com/rst-threat-feed/

RST Report Hub

An electronic library of threat reports from hundreds of security companies, individual researchers and cyber communities.

These reports undergo transformation from human-readable formats to machine-readable ones, including STIX 2.1. Extensive multilingual translation, archiving as PDFs, and summarization are conducted. Key data, encompassing threat actors, names, software, CVEs, geolocation, industry, etc., is automatically extracted, with due credit to the original report author.

Read more: https://www.rstcloud.com/rst-report-hub/

RST Threat Library

A curated knowledge base of threat objects — intrusion sets (threat actors / activity groups), malware families, tools, and campaigns — with synonyms, references, and context. Ideal for populating MISP galaxies, OpenCTI knowledge, or your own TIP.

import rstapi
tl = rstapi.threatobjects()

# one page, with filtering / sorting
tl.GetThreatObjects("malware", limit=50, orderBy="modified", orderMode="desc")

# a single object
tl.GetThreatObjectByName("intrusion-sets", "APT28")

# walk the whole set (paginates internally)
for obj in tl.IterThreatObjects("campaigns"):
    print(obj.get("name"))

Object types: intrusion-sets, malware, tools, campaigns.

RST Noise Control

A service that can be used with TIP, SOAR, or SIEM solutions to minimise the noise coming from False Positive indicators. Make sure that CDN IPs, known domains, common URLs, or hashes of calc.exe don’t trigger alerts.

This API employs over 110 rulesets and incorporates 12 GB of individual exceptions, to check if indicators are “known-good” and to be considered noise.

Read more: https://www.rstcloud.com/rst-noise-control/

RST IoC Lookup

An API to check individual values if they are a suspicious or malicious indicator (IP, Domain, URL, Hash). Offering dynamic scoring and automatic decay of outdated indicators, the service ensures fair request rate with low cost.

Ideal for real-time checks in SOAR or be integration into custom applications for online user connection scrutiny.

Read more: https://www.rstcloud.com/rst-ioc-lookup/

RST Scan API

Scan external targets for Cobalt Strike beacons, SSL certificates, favicons, HTML content and JavaScript, and page screenshots (first frame, full page, last frame). All operations use public URLs or IP:port targets as documented in the RST Cloud API.

import rstapi
s = rstapi.scan()
s.GetSslCertificate("198.51.100.1:443")
s.GetHtmlScreenshotFirst("https://example.com", path="shot.png")  # decodes image_base64 to shot.png
import rstapi
q = rstapi.connectivity().CheckApiKey()
remaining = q.get("quota", {}).get("remaining")  # requests left in the current period

RST Whois API

A service to get actual registration info in JSON format for a given domain without limitations on speed and no ban from WHOIS servers. The results include whenever possible:

  • Data in a unified JSON format
  • Registrar and registrant info
  • Age of the domain
  • Dates (registered, updated, expires)
  • Raw response from WHOIS servers

Read more: https://www.rstcloud.com/rst-whois-api/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rstapi-1.2.0.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rstapi-1.2.0-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file rstapi-1.2.0.tar.gz.

File metadata

  • Download URL: rstapi-1.2.0.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for rstapi-1.2.0.tar.gz
Algorithm Hash digest
SHA256 19c5d98f522b9dbf03f1960aa76c137ce03be6d8c205b0cf9336ec7a8c9f25ff
MD5 2ef8f1523fca3c53e006878ee4f51074
BLAKE2b-256 58cd65218c8ee0c5a860096776ed98e2f09dc576c908aab1f2a83854cb8137e9

See more details on using hashes here.

File details

Details for the file rstapi-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: rstapi-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for rstapi-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aab1fbb4e520135a3b280bebadb6511ad805f5aee46a31ed18a28aa3b6ae529c
MD5 15a945123c0ce9d2d202d7f8bd6bba22
BLAKE2b-256 01543a1fa4394974b79e263e7416af560c45dea4a7a9fd90d71b4d512a1221ef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page