polyswarm_api.resources

Module Contents

polyswarm_api.resources.yara[source]
polyswarm_api.resources.logger[source]
class polyswarm_api.resources.Engine(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /microengines[source]
classmethod _list_headers(cls, api)[source]
__hash__(self)[source]
__eq__(self, other)[source]
__repr__(self)[source]
class polyswarm_api.resources.ToolMetadata[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /artifact/metadata[source]
class polyswarm_api.resources.MetadataMapping[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /search/metadata/mappings[source]
class polyswarm_api.resources.Metadata(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /search/metadata/query[source]
KNOWN_KEYS[source]
__contains__(self, item)[source]
__getattr__(self, name)[source]
classmethod _get_params(cls, **kwargs)[source]
class polyswarm_api.resources.IOC[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /ioc[source]
classmethod iocs_by_hash(cls, api, hash_value, hash_type, hide_known_good=False)[source]
classmethod check_known_hosts(cls, api, ips, domains)[source]
classmethod create_known_good(cls, api, type, host, source)[source]
classmethod update_known_good(cls, api, id, type, host, source, good)[source]
classmethod delete_known_good(cls, api, id)[source]
class polyswarm_api.resources.ArtifactInstance(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource, polyswarm_api.core.Hashable

RESOURCE_ENDPOINT = /instance[source]
malicious_assertions[source]
benign_assertions[source]
valid_assertions[source]
upload_file(self, artifact, attempts=3, **kwargs)[source]
classmethod exists_hash(cls, api, hash_value, hash_type)[source]
classmethod search_hash(cls, api, hash_value, hash_type)[source]
classmethod search_url(cls, api, url)[source]
classmethod list_scans(cls, api, hash_value)[source]
classmethod submit(cls, api, artifact, artifact_name, artifact_type, scan_config=None)[source]
classmethod rescan(cls, api, hash_value, hash_type, scan_config=None)[source]
classmethod rescan_id(cls, api, submission_id, scan_config=None)[source]
classmethod lookup_uuid(cls, api, submission_id)[source]
classmethod metadata_rerun(cls, api, hashes, analyses=None, skip_es=None)[source]
__str__(self)[source]
class polyswarm_api.resources.ArtifactArchive(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /consumer/download/stream[source]
class polyswarm_api.resources.AssertionsJob(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /consumer/assertions-job[source]
class polyswarm_api.resources.VotesJob(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /consumer/votes-job[source]
polyswarm_api.resources._read_chunks(file_handle)[source]
polyswarm_api.resources.all_hashes(file_handle, algorithms=(_sha256, _sha1, _md5))[source]
class polyswarm_api.resources.LocalArtifact(response, api=None, handle=None, folder=None, artifact_name=None, artifact_type=None, analyze=False, **kwargs)[source]

Bases: polyswarm_api.core.BaseResource, polyswarm_api.core.Hashable

Artifact for which we have local content

hash[source]
classmethod download(cls, api, hash_value, hash_type, handle=None, folder=None, artifact_name=None)[source]
classmethod download_id(cls, api, instance_id, handle=None, folder=None, artifact_name=None)[source]
classmethod download_archive(cls, api, u, handle=None, folder=None, artifact_name=None)[source]

This method is special, in that it is simply for downloading from S3

__getattr__(self, name)[source]
__iter__(self)[source]
classmethod from_handle(cls, api, handle, artifact_type=None, analyze=False, artifact_name=None, **kwargs)[source]
classmethod from_path(cls, api, path, artifact_type=None, analyze=False, artifact_name=None, **kwargs)[source]
classmethod from_content(cls, api, content, artifact_name=None, artifact_type=None, analyze=False)[source]
analyze_artifact(self, force=False)[source]
_calc_hashes(self, fh)[source]
_run_analyzers(self, fh)[source]
__str__(self)[source]
class polyswarm_api.resources.YaraRuleset(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /hunt/rule[source]
class polyswarm_api.resources.LiveYaraRuleset[source]

Bases: polyswarm_api.resources.YaraRuleset

RESOURCE_ENDPOINT = /hunt/rule/live[source]
class polyswarm_api.resources.LiveHuntResult(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /hunt/live[source]
class polyswarm_api.resources.LiveHuntResultList[source]

Bases: polyswarm_api.resources.LiveHuntResult

RESOURCE_ENDPOINT = /hunt/live/list[source]
class polyswarm_api.resources.HistoricalHunt(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /hunt/historical[source]
class polyswarm_api.resources.HistoricalHuntList[source]

Bases: polyswarm_api.resources.HistoricalHunt

RESOURCE_ENDPOINT = /hunt/historical/list[source]
class polyswarm_api.resources.HistoricalHuntResult(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /hunt/historical/results[source]
class polyswarm_api.resources.HistoricalHuntResultList[source]

Bases: polyswarm_api.resources.HistoricalHuntResult

RESOURCE_ENDPOINT = /hunt/historical/results/list[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /tags/link[source]
RESOURCE_ID_KEYS = ['hash'][source]
classmethod _list_params(cls, **kwargs)[source]
class polyswarm_api.resources.MalwareFamily(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /tags/family[source]
RESOURCE_ID_KEYS = ['name'][source]
class polyswarm_api.resources.Tag(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /tags/tag[source]
RESOURCE_ID_KEYS = ['name'][source]
class polyswarm_api.resources.Assertion(content, api=None, scanfile=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

__str__(self)[source]
class polyswarm_api.resources.Vote(content, api=None, scanfile=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

__str__(self)[source]
class polyswarm_api.resources.ArtifactType[source]

Bases: enum.Enum

FILE = 0[source]
URL = 1[source]
static parse(value)[source]
static to_string(artifact_type)[source]
decode_content(self, content)[source]
class polyswarm_api.resources.Hash(hash_, hash_type=None, validate_hash=True)[source]

Bases: polyswarm_api.core.Hashable

classmethod from_hashable(cls, hash_, hash_type=None)[source]

Coerce to Hashable object

Parameters
  • hash – Hashable object

  • hash_type – Hash type

  • polyswarm – PolyswarmAPI instance

Returns

Hash

__hash__(self)[source]
__str__(self)[source]
__repr__(self)[source]
class polyswarm_api.resources.SandboxTask(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /sandbox/sandboxtask[source]
upload_file(self, artifact, attempts=3, **kwargs)[source]
classmethod get(cls, api, **kwargs)[source]
classmethod latest(cls, api, **kwargs)[source]
classmethod my_tasks(cls, api, **kwargs)[source]
classmethod create_file(cls, api, **kwargs)[source]
classmethod update_file(cls, api, **kwargs)[source]
class polyswarm_api.resources.SandboxArtifact(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

class polyswarm_api.resources.SandboxProvider(content, api=None)[source]

Bases: polyswarm_api.core.BaseJsonResource

RESOURCE_ENDPOINT = /sandbox/provider[source]
classmethod parse_result(cls, api, content, **kwargs)[source]