confirmed host

IP address 45.88.91.165

DcRatPureRATcontrollers · :8686, :3535, :7590, :443

On AS399486.

listed last confirmed feed checked TLP:CLEAR Suricata rules Show in the live feed

Relations

Values this address shares with other hosts in this archive, rarest first. A shared value says the hosts were set up alike, not that one operator runs them.

SharedValueOther hosts
JA4X template0b479b1b5763_0b479b1b5763_e9d2b55797df166 other hosts · 166 listed

Not shared with any other host in this archive: 1 file, 1 certificate.

Network context

SharedValueOther hosts
/2445.88.91.0/242 other hosts · 2 listed
NetworkAS399486 · 12651980 CANADA36 other hosts · 36 listed

Hosts near this one, for context only.

Summary

First seen by the scanner2026-09-22
Ports4 · 4 listed
Evidence1 certificate

Ports

This address answered on 4 ports, across 2 families. First seen and last confirmed dates are per row, by UTC day.

PortFamilyFirst seenLast confirmedStatusTLS certificateJA4XFile
:8686DcRatlisted
:3535DcRatlisted
:7590PureRATlisted
:443 · HTTPSPureRATlisted2b92afc94cef0b479b1b5763_0b479b1b5763_e9d2b55797dffd86b9d9e522

Observation history

Listed on 39 of the 63 days since this archive began recording, 2026-08-29 UTC.

  1. listed
  2. :8686
  3. :3535
  4. :7590 and 1 more

2026-08-292026-10-30

  • first seen to last confirmed
  • listed after its last confirmation

A marked day is a UTC day the feed listed this address. The feed keeps a listener for up to 90 days after its last confirmation, so a listed day is not a confirmation. A listener no longer in the feed is drawn to its last confirmation.

Listed days as dates
  • 2026-09-22 – 2026-10-30 (39 days)

Evidence

Each certificate, configuration and file appears once, with the listeners that carried it.

TLS certificate 2b92afc94cef

On :443.

tls certificate2b92afc94cefcc0885c616b6a4a08d2294db7aa4a381edb4db8bdf2787942e4a
cert subjectapi.purecoder.io
cert subject orgPureCrack
cert issuerapi.purecoder.io
cert issuer orgPureCrack
cert validity2026-09-18 → 2036-09-16
cert typeself-signed
cert key2048-bit
cert serial (hex)7ed96f161fa71877
cert serial (decimal)9140459059536140407
cert names*.purecoder.io api.purecoder.io api1.purecoder.io api2.purecoder.io

The names above are what the certificate claims, not proof that this host owns them. Treat a familiar name as a likely impersonation.

File fd86b9d9e522

On :443.

file sha-256fd86b9d9e522e767844cd246e6cd3638385e41b5e07ac6ee2a5c3ecc43dac39c

The hash of the file this listener served when scanned. A host can change what it serves. Only the response’s Content-Type claimed a download; no executable magic bytes were seen, so the file type is unverified.

Listeners

Each listener below shows its status and what sets it apart. Dates are in Ports; certificates, configurations and files in Evidence. Common to all 4 listeners:

serviceip-port · tcp
networkAS399486 · 12651980 CANADA
confidence100 / 100

45.88.91.165:8686 · DcRat

listed

45.88.91.165:3535 · DcRat

listed

45.88.91.165:7590 · PureRAT

listed

45.88.91.165:443 · PureRAT

listed · certificate 2b92afc94cef · file fd86b9d9e522

observed hostapi.purecoder.io

Hosts sharing a value with this one

166 other hosts in this archive share at least one value with this one. Each is listed once, under its first shared value in Relations order. Dates and status are from the records that share a value. Showing the 40 that rank first.

AddressFamilySharesLast confirmedStatus
JA4X template · 166 other hosts · 166 listed

These hosts’ certificates share one JA4X template, which points to the same certificate tooling. It is not evidence of a single operator.

Of these, 126 are past the 40 hosts shown.

217.60.195.157PureRATJA4X templatelisted
70.36.127.51PureRATJA4X templatelisted
91.92.41.92PureRATJA4X templatelisted
85.17.92.21PureRATJA4X templatelisted
70.36.127.16PureRATJA4X templatelisted
66.235.174.79PureRATJA4X templatelisted
64.224.17.22PureRATJA4X templatelisted
52.197.194.156PureRATJA4X templatelisted
46.151.182.67PureRATJA4X templatelisted
45.139.104.29PureRATJA4X templatelisted
45.139.104.232PureRATJA4X templatelisted
45.139.104.199PureRATJA4X templatelisted
45.139.104.180PureRATJA4X templatelisted
40.223.85.181PureRATJA4X templatelisted
40.223.85.146PureRATJA4X templatelisted
31.56.209.55PureRATJA4X templatelisted
31.56.209.139PureRATJA4X templatelisted
24.152.36.31PureRATJA4X templatelisted
23.227.202.127PureRATJA4X templatelisted
217.60.195.25PureRATJA4X templatelisted
193.142.146.172PureRATJA4X templatelisted
185.233.164.109PureRATJA4X templatelisted
185.101.104.85PureRATJA4X templatelisted
185.127.94.179PureRATJA4X templatelisted
172.93.110.43PureRATJA4X templatelisted
160.119.76.118PureRATJA4X templatelisted
15.235.148.248PureRATJA4X templatelisted
139.64.172.10PureRATJA4X templatelisted
135.136.148.30PureRATJA4X templatelisted
130.12.182.209PureRATJA4X templatelisted
5.253.86.251PureRATJA4X templatelisted
66.94.113.10PureRATJA4X templatelisted
157.230.85.57PureRATJA4X templatelisted
98.89.43.158PureRATJA4X templatelisted
31.76.125.15PureRATJA4X templatelisted
80.76.49.48PureRATJA4X templatelisted
103.38.236.70PureRATJA4X templatelisted
91.92.41.151PureRATJA4X templatelisted
167.148.41.45PureRATJA4X templatelisted
45.139.104.26PureRATJA4X templatelisted

Neighbourhood · 45.88.91.0/24 · 2 other hosts

2 other hosts in this archive are in the same /24, shown for context.

Deploy

Suricata rules and hunt queries for this address’s 4 listed listeners.

Suricata rules

Each query searches the last 30 days of your logs for connections to these listeners and for the 1 file this address served. Queries hold only addresses, ports and file hashes.

Microsoft Defender XDR (KQL)
DeviceNetworkEvents
| where Timestamp > ago(30d)
| where (RemoteIP == "45.88.91.165" and RemotePort in (443, 3535, 7590, 8686))
DeviceFileEvents
| where Timestamp > ago(30d)
| where SHA256 in ("fd86b9d9e522e767844cd246e6cd3638385e41b5e07ac6ee2a5c3ecc43dac39c")
Microsoft Sentinel (KQL)
CommonSecurityLog
| where TimeGenerated > ago(30d)
| where (DestinationIP == "45.88.91.165" and DestinationPort in (443, 3535, 7590, 8686))
Splunk (SPL, CIM data models)
| tstats summariesonly=false count min(_time) as first_time max(_time) as last_time
    from datamodel=Network_Traffic where earliest=-30d
    ((All_Traffic.dest_ip="45.88.91.165" (All_Traffic.dest_port=443 OR All_Traffic.dest_port=3535 OR All_Traffic.dest_port=7590 OR All_Traffic.dest_port=8686)))
    by All_Traffic.src_ip All_Traffic.dest_ip All_Traffic.dest_port
| tstats summariesonly=false count min(_time) as first_time max(_time) as last_time
    from datamodel=Endpoint.Filesystem where earliest=-30d
    (Filesystem.file_hash="fd86b9d9e522e767844cd246e6cd3638385e41b5e07ac6ee2a5c3ecc43dac39c")
    by Filesystem.dest Filesystem.file_path Filesystem.file_hash
Elastic (EQL)
network where
  (destination.ip == "45.88.91.165" and destination.port in (443, 3535, 7590, 8686))
file where file.hash.sha256 in ("fd86b9d9e522e767844cd246e6cd3638385e41b5e07ac6ee2a5c3ecc43dac39c")

Cite this record

Plain text, for a ticket or a report
Address 45.88.91.165 Family DcRat, PureRAT Ports :443, :3535, :7590, :8686 Status listed (feed checked 2026-10-30 17:37 UTC) First seen 2026-09-22 Last confirmed 2026-10-30 Record https://publicmosaic.com/ip/45.88.91.165 Source Public Mosaic, TLP:CLEAR