<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Peakhour.IO - Credential Exposure</title><link href="https://www.peakhour.io/" rel="alternate"></link><link href="https://www.peakhour.io/feeds/tag/credential-exposure.atom.xml" rel="self"></link><id>https://www.peakhour.io/</id><updated>2026-10-22T00:00:00+11:00</updated><entry><title>Bissa scanner and the hunt for application secrets</title><link href="https://www.peakhour.io/blog/bissa-scanner-credential-harvesting/" rel="alternate"></link><published>2026-10-22T00:00:00+11:00</published><updated>2026-10-22T00:00:00+11:00</updated><author><name>AC</name></author><id>tag:www.peakhour.io,2026-10-22:/blog/bissa-scanner-credential-harvesting/</id><summary type="html">&lt;p&gt;Bissa research describes AI-assisted exploitation and credential harvesting. Our logs reveal a recurring multipart marker across 67 source IPs.&lt;/p&gt;</summary><content type="html">&lt;p&gt;An exposed application configuration file can give an intruder credentials for cloud services, payments, messaging and databases. A published investigation of the Bissa scanner describes how broad exploitation leads to secret collection and access validation. Our own review found a request marker named &lt;code&gt;bissa_cve_boundary&lt;/code&gt; across 67 source IPs on 22 October 2026, offering a practical way to search for recurring activity.&lt;/p&gt;
&lt;h2&gt;How the Bissa workflow operates&lt;/h2&gt;
&lt;p&gt;The &lt;a href="https://thedfirreport.com/2026/04/22/bissa-scanner-exposed-ai-assisted-mass-exploitation-and-credential-harvesting/"&gt;DFIR Report's April 2026 investigation&lt;/a&gt; describes a workflow built around React2Shell (&lt;a href="https://nvd.nist.gov/vuln/detail/CVE-2025-55182"&gt;CVE-2025-55182&lt;/a&gt;). It reports that the scanner searches internet-facing applications, exploits vulnerable targets, and then collects &lt;code&gt;.env&lt;/code&gt; files containing credentials for AI, cloud, payment, messaging and database services. Follow-up tooling checks which credentials work and prioritizes access with greater value. The report also describes Claude Code and OpenClaw helping the operator troubleshoot, coordinate and refine the collection process, with Telegram notifications for results. The researchers reconstructed this workflow from exposed operator infrastructure. The marker in our logs gives us a search lead; identifying its operator requires additional evidence.&lt;/p&gt;
&lt;h2&gt;What the request records show&lt;/h2&gt;
&lt;p&gt;We reviewed HTTP logs from 08:00 to 11:23 AEDT on 22 October 2026. It found the marker in the &lt;code&gt;Content-Type&lt;/code&gt; value for multipart requests. The two source addresses &lt;code&gt;35.215.139.208&lt;/code&gt; and &lt;code&gt;35.213.2.73&lt;/code&gt; each had requests with HTTP 200 responses. The next check for these two sources is to inspect the returned content and application logs.&lt;/p&gt;
&lt;p&gt;The boundary parameter names the separator used between parts in a multipart body. It is a request-pattern clue that can persist as source addresses or user-agent strings change. In this sample, the same marker appeared with different client declarations, so searching the boundary alongside path and response status gives analysts another way to find related records.&lt;/p&gt;
&lt;p&gt;The user-agent strings included &lt;code&gt;Python/3.11 aiohttp/3.8.4&lt;/code&gt; and &lt;code&gt;Python/3.12 aiohttp/3.14.5&lt;/code&gt;. A Chrome 126 user-agent string also appeared. GeoIP organization labels included Google, The Constant Company and RouterHosting. These values help identify records to compare.&lt;/p&gt;
&lt;p&gt;Use the marker to find candidate requests, then compare paths, response status, user-agent and timing. Provider labels add broad network context. This lets an analyst build a focused evidence set before deciding whether a rule should block a request or raise an alert.&lt;/p&gt;
&lt;p&gt;A December 2025 &lt;a href="https://forum.umbraco.com/t/unexpected-end-of-stream-the-content-may-have-already-been-read-by-another-component/7012"&gt;Umbraco support thread&lt;/a&gt; also contains the &lt;code&gt;bissa_cve_boundary&lt;/code&gt; string. That gives defenders an older place to search for the marker. Our guide to &lt;a href="/blog/recognising-vulnerability-scanners/"&gt;recognising vulnerability scanners across changing IP addresses&lt;/a&gt; explains how to compare request patterns across source addresses.&lt;/p&gt;
&lt;p&gt;We found these requests while investigating the multipart traffic discussed in our &lt;a href="/blog/php2shell-upload-probes/"&gt;PHP2Shell report&lt;/a&gt;. The older Umbraco report gives this marker a history stretching back before the PHP disclosures.&lt;/p&gt;
&lt;h2&gt;Protect the files and the credentials&lt;/h2&gt;
&lt;p&gt;Keep environment files, backups and repository metadata outside web-served directories. Configure both the origin and edge to deny access to sensitive paths. Include the primary &lt;code&gt;.env&lt;/code&gt; file, backup suffixes and alternate configuration paths in deployment reviews. Include these checks in release validation so a deployment does not publish a backup alongside the live configuration. OWASP's guide to &lt;a href="https://wstg.owasp.org/v4.2/4-Web_Application_Security_Testing/02-Configuration_and_Deployment_Management_Testing/04-Review_Old_Backup_and_Unreferenced_Files_for_Sensitive_Information/"&gt;reviewing old and unreferenced files&lt;/a&gt; discusses how backup copies can expose credentials and source code.&lt;/p&gt;
&lt;p&gt;When a secret may have been exposed, revoke or rotate it and review where it was used. OWASP's &lt;a href="https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html"&gt;Secrets Management Cheat Sheet&lt;/a&gt; covers rotating exposed credentials and monitoring their use. Monitor requests to environment and backup paths, then compare them with authentication events on downstream services. Review whether exposed credentials had excessive permissions, disable unused accounts and check relevant service logs for follow-up activity. A WAF can block known exploit patterns and sensitive paths, while application updates address the underlying vulnerabilities. Our guide to &lt;a href="/blog/how-to-tune-your-waf/"&gt;tuning a WAF&lt;/a&gt; covers practical controls and review.&lt;/p&gt;
&lt;h2&gt;Observed source addresses&lt;/h2&gt;
&lt;p&gt;These source IPs sent requests containing &lt;code&gt;bissa_cve_boundary&lt;/code&gt; during the review window:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;34.1.212.165
34.1.222.89
34.7.103.220
34.26.99.252
34.65.6.231
34.79.37.185
34.79.227.19
34.80.224.185
34.81.174.226
34.105.14.173
34.118.165.147
35.187.41.240
35.189.134.239
35.192.65.236
35.194.107.148
35.196.45.0
35.196.110.183
35.204.7.231
35.206.193.48
35.206.201.46
35.206.218.173
35.213.2.73
35.213.7.240
35.213.69.245
35.213.87.236
35.213.119.33
35.215.139.208
35.215.145.83
35.215.167.171
35.223.246.134
35.232.5.44
35.233.103.194
35.236.172.48
35.243.109.51
35.245.122.12
45.32.205.118
45.76.139.160
45.77.71.57
45.77.82.159
45.77.225.79
64.176.45.104
64.176.71.20
64.177.42.195
64.177.112.216
64.177.126.251
65.20.109.164
65.20.110.253
65.20.114.174
66.135.2.244
70.34.248.35
80.240.29.16
95.179.222.141
108.61.198.98
136.66.201.20
136.70.7.252
136.86.224.157
136.119.51.159
144.172.118.88
149.28.87.17
149.28.88.68
172.86.86.97
192.248.183.92
199.247.11.20
202.182.103.216
207.148.6.134
207.148.72.68
207.246.119.104
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="Security"></category><category term="Threat Detection"></category><category term="Application Security"></category><category term="Credential Exposure"></category><category term="WAF"></category></entry><entry><title>From an exposed .env file to an SMTP login in 22 seconds</title><link href="https://www.peakhour.io/blog/env-file-smtp-credential-reuse/" rel="alternate"></link><published>2026-10-22T00:00:00+11:00</published><updated>2026-10-22T00:00:00+11:00</updated><author><name>AC</name></author><id>tag:www.peakhour.io,2026-10-22:/blog/env-file-smtp-credential-reuse/</id><summary type="html">&lt;p&gt;One source fetched three exposed .env decoys, then presented each exact password to SMTP within 22 seconds. Here is the evidence and what to protect.&lt;/p&gt;</summary><content type="html">&lt;p&gt;A web request for &lt;code&gt;/.env&lt;/code&gt; can expose credentials an application uses to connect to other services. One of our honeypots recorded a clear example on 19 October 2026. Source &lt;code&gt;45.138.12.68&lt;/code&gt; requested three environment-file paths, then presented the matching decoy passwords to our SMTP service. It used the password from &lt;code&gt;/.env&lt;/code&gt; 21.58 seconds after requesting that file.&lt;/p&gt;
&lt;h2&gt;Three disclosures, three SMTP attempts&lt;/h2&gt;
&lt;p&gt;Each file contained a different decoy SMTP password. The client then used each password in a separate SMTP login attempt. All times below are UTC on 19 October 2026, corresponding to 02:32 AEDT on 20 October.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/.env&lt;/code&gt; at 15:32:19.841 → SMTP AUTH at 15:32:41.421, 21.58 seconds later.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/.env.backup&lt;/code&gt; at 15:32:27.878 → SMTP AUTH at 15:32:44.928, 17.05 seconds later.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/.env.bak&lt;/code&gt; at 15:32:28.569 → SMTP AUTH at 15:32:46.176, 17.61 seconds later.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The exact password matches connected each file request to the later SMTP authentication. Our SMTP honeypot simulated successful authentication. The client sent EHLO, upgraded the connection with STARTTLS, sent EHLO again, then used AUTH to test the credentials. It followed with MAIL to begin a mail transaction. RSET was the last recorded command, resetting that transaction. We recorded no recipient or message data.&lt;/p&gt;
&lt;p&gt;The sequence is consistent with an automated credential validator: find configuration files, extract credentials and check them against another service. During the same burst, the source also requested &lt;code&gt;/.env.anthropic&lt;/code&gt;, &lt;code&gt;/.env.openai&lt;/code&gt; and &lt;code&gt;/.git/config&lt;/code&gt;, extending its search to AI-service configuration and repository metadata.&lt;/p&gt;
&lt;p&gt;An exposed environment file can matter even when the site itself has no login page. Configuration often contains credentials for databases, mail systems, APIs or deployment tools. A successful file response can give a scanner material to test against services that are reachable separately.&lt;/p&gt;
&lt;h2&gt;Fingerprints across web and mail&lt;/h2&gt;
&lt;p&gt;The observed HTTP connection used TCP signature &lt;code&gt;1460|7|1|1|64240|0x02&lt;/code&gt; and TLS JA3 &lt;code&gt;a15e24f40a90d5cba676dfe012ff2d4a&lt;/code&gt;. The HTTP user-agent claimed Chrome 124 on Windows. The three SMTP connections had the same TCP signature and a different JA3, &lt;code&gt;d39e1be3241d516b1f714bd47c2bc968&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The different TLS profiles make sense across separate protocols. The exact credential matches and issuer links establish the web-to-mail sequence; the fingerprints add context about each connection. Our guide to &lt;a href="/blog/fingerprint-is-a-cohort-not-a-client/"&gt;grouping traffic with network fingerprints&lt;/a&gt; explains how to use these values alongside other evidence. For broader patterns, see &lt;a href="/blog/recognising-vulnerability-scanners/"&gt;how to recognise vulnerability scanners across changing IP addresses&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Reduce exposure and improve detection&lt;/h2&gt;
&lt;p&gt;Keep secrets outside web-accessible directories. Use origin access rules and WAF rules to block requests for environment files, backup copies and repository metadata. OWASP's guide to &lt;a href="https://wstg.owasp.org/v4.2/4-Web_Application_Security_Testing/02-Configuration_and_Deployment_Management_Testing/04-Review_Old_Backup_and_Unreferenced_Files_for_Sensitive_Information/"&gt;reviewing old and unreferenced files&lt;/a&gt; describes how backup copies can expose credentials and source. Check the origin as well as the edge, since a request can reach the application through a different route than expected. Review access logs for repeated requests to common secret-file paths and correlate them with authentication events on services that use those credentials.&lt;/p&gt;
&lt;p&gt;When a real secret may have been exposed, revoke or rotate it and review its use across every service where it was valid. OWASP's &lt;a href="https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html"&gt;Secrets Management Cheat Sheet&lt;/a&gt; recommends removing exposed secrets and rotating them. For mail, correlate the affected account, source IP, AUTH and MAIL results, connection timing and follow-up commands. Keep password values out of production logs. Preserve recipient, message-submission and delivery records so you can establish how far each mail session progressed. Our guide to &lt;a href="/blog/how-to-tune-your-waf/"&gt;tuning a WAF&lt;/a&gt; covers practical request controls and review.&lt;/p&gt;</content><category term="Security"></category><category term="Credential Exposure"></category><category term="Email Security"></category><category term="Threat Detection"></category><category term="WAF"></category></entry></feed>