<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on Suspicious Bytes</title><link>https://suspiciousbytes.com/en/posts/</link><description>Recent content in Posts on Suspicious Bytes</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Sat, 27 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://suspiciousbytes.com/en/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Who's Actually in Your Meeting? Why You Need to Take Teams, Webex, and Zoom Security Seriously</title><link>https://suspiciousbytes.com/en/posts/anonymous-join-meeting/</link><pubDate>Sat, 27 Jun 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/anonymous-join-meeting/</guid><description>&lt;p&gt;We’ve all gotten used to video conferencing. A few clicks and you’re on a call with colleagues, clients, or senior management. Precisely because it’s become so commonplace, we often forget something important: a meeting link is a digital door. And a door that isn’t properly locked can be opened by anyone who finds the key.
In this post, I’ll explore why it’s so important to properly configure your meeting environments in Microsoft Teams, Cisco Webex, and Zoom, using a well-known blunder and a Teams setting that poses more risk than many people realize.&lt;/p&gt;</description></item><item><title>Writing Your First Sigma Rule</title><link>https://suspiciousbytes.com/en/posts/writing-your-first-sigma-rule/</link><pubDate>Mon, 08 Jun 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/writing-your-first-sigma-rule/</guid><description>&lt;p&gt;Sigma is to log detections what YARA is to files: a generic, vendor-neutral way to
describe &lt;em&gt;what&lt;/em&gt; you want to detect, which you then convert into the query language
your SIEM actually speaks.&lt;/p&gt;
&lt;h2 id="why-a-portable-format"&gt;Why a portable format?&lt;/h2&gt;
&lt;p&gt;Detections written directly in one query language are stuck there forever. Sigma
lets you write once and compile to many backends:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;One rule, many targets (Splunk, Elastic, Sentinel, …)&lt;/li&gt;
&lt;li&gt;Reviewable in pull requests like any other code&lt;/li&gt;
&lt;li&gt;Shareable with the community without leaking your stack&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;A detection you cannot test, version, and review is a liability, not an asset.&lt;/p&gt;</description></item><item><title>Detecting Lateral Movement</title><link>https://suspiciousbytes.com/en/posts/detecting-lateral-movement/</link><pubDate>Sat, 30 May 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/detecting-lateral-movement/</guid><description>&lt;p&gt;Once an attacker has a foothold, the interesting part begins: moving from the
first host toward whatever they actually came for. That east-west movement leaves
traces if you know which events to join.&lt;/p&gt;
&lt;h2 id="signals-worth-joining"&gt;Signals worth joining&lt;/h2&gt;
&lt;p&gt;Lateral movement rarely shows up as a single smoking-gun event. It emerges from
correlation:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Network logon events (&lt;code&gt;4624&lt;/code&gt; type 3) from unusual sources&lt;/li&gt;
&lt;li&gt;Service or scheduled-task creation on the destination&lt;/li&gt;
&lt;li&gt;Remote process creation shortly after&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;Correlate across hosts, not just within one. A single &lt;code&gt;4624&lt;/code&gt; is noise; a chain
of them following an account around the estate is a story.&lt;/p&gt;</description></item><item><title>Anatomy of a Phishing Incident</title><link>https://suspiciousbytes.com/en/posts/anatomy-of-a-phishing-incident/</link><pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/anatomy-of-a-phishing-incident/</guid><description>&lt;p&gt;Most intrusions still start with someone clicking a link. This is a sanitised
walk-through of a credential-phishing case and the timeline that mattered.&lt;/p&gt;
&lt;h2 id="the-timeline"&gt;The timeline&lt;/h2&gt;
&lt;p&gt;Incident response lives and dies by an accurate timeline. Reconstruct it before
you theorise:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;08:42&lt;/strong&gt; — user reports a &amp;ldquo;mailbox full&amp;rdquo; email&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;08:55&lt;/strong&gt; — same template seen by twelve other recipients&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;09:10&lt;/strong&gt; — one set of credentials submitted to the fake portal&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;09:13&lt;/strong&gt; — successful logon from a foreign ASN&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;The goal of triage is not to find everything. It is to answer one question fast:
did anything actually succeed?&lt;/p&gt;</description></item><item><title>Triaging Suspicious PowerShell</title><link>https://suspiciousbytes.com/en/posts/triaging-suspicious-powershell/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/triaging-suspicious-powershell/</guid><description>&lt;p&gt;An encoded PowerShell command in your process logs is not automatically malicious,
but it always deserves a closer look. Here is how to triage one calmly.&lt;/p&gt;
&lt;h2 id="what-raises-the-flag"&gt;What raises the flag&lt;/h2&gt;
&lt;p&gt;Certain flag combinations are unusual for a legitimate script and common for
tradecraft:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-EncodedCommand&lt;/code&gt; (base64 payloads)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-WindowStyle Hidden&lt;/code&gt; and &lt;code&gt;-NonInteractive&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-ExecutionPolicy Bypass&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Decoding a payload is reading, not running. Decode in an isolated environment and
never paste an unknown command back into a live shell.&lt;/p&gt;</description></item><item><title>OSINT for Beginners</title><link>https://suspiciousbytes.com/en/posts/osint-for-beginners/</link><pubDate>Sun, 03 May 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/osint-for-beginners/</guid><description>&lt;p&gt;Open-source intelligence is the practice of collecting information from publicly
available sources — and a surprising amount of an organisation&amp;rsquo;s footprint is
sitting in plain sight.&lt;/p&gt;
&lt;h2 id="where-to-start"&gt;Where to start&lt;/h2&gt;
&lt;p&gt;Begin with the passive sources that never touch the target directly:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Public DNS and WHOIS records&lt;/li&gt;
&lt;li&gt;Certificate transparency logs&lt;/li&gt;
&lt;li&gt;Cached pages and archives&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;The goal of OSINT is not to break in. It is to understand a footprint using only
what someone has already published.&lt;/p&gt;</description></item><item><title>Building a Threat Actor Profile</title><link>https://suspiciousbytes.com/en/posts/building-a-threat-actor-profile/</link><pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/building-a-threat-actor-profile/</guid><description>&lt;p&gt;Cyber threat intelligence is only useful when it changes a decision. A good actor
profile turns scattered observations into something a defender can act on this
week, not just read.&lt;/p&gt;
&lt;h2 id="structure-beats-prose"&gt;Structure beats prose&lt;/h2&gt;
&lt;p&gt;A profile that reads like a story is hard to operationalise. Capture it as
structured fields instead:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Aliases and overlapping clusters&lt;/li&gt;
&lt;li&gt;Targeted sectors and regions&lt;/li&gt;
&lt;li&gt;Observed techniques (mapped to ATT&amp;amp;CK)&lt;/li&gt;
&lt;li&gt;Known infrastructure patterns&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Intelligence without a confidence level is just a rumour with good formatting.
State what you know, how well you know it, and how you&amp;rsquo;d be proven wrong.&lt;/p&gt;</description></item><item><title>Getting started with Threat Hunting with a minimal approach</title><link>https://suspiciousbytes.com/en/posts/starting-with-threathunting/</link><pubDate>Sat, 27 Sep 2025 00:00:00 +0000</pubDate><guid>https://suspiciousbytes.com/en/posts/starting-with-threathunting/</guid><description>&lt;h2 id="start-hunting-today"&gt;Start Hunting Today!&lt;/h2&gt;
&lt;p&gt;Threat hunting doesn&amp;rsquo;t require enterprise tools. You can simply start with what you already have.&lt;/p&gt;
&lt;h3 id="minimum-requirements"&gt;Minimum Requirements&lt;/h3&gt;
&lt;p&gt;Start with things you probably already have. Work from there, and then think about improving and growing.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Centralized logging&lt;/strong&gt; (Sysmon, firewall, proxy logs)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Query capability&lt;/strong&gt; (ELK, Splunk, or even grep)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Baseline knowledge&lt;/strong&gt; of your network&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2-4 hours per week&lt;/strong&gt; of dedicated hunting time&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Baselining is the hardest part for beginners, so start small. Pick one thing you can describe as &amp;ldquo;normal&amp;rdquo; (which hosts talk to the internet, which accounts run as admin, what runs at startup) and write it down. That single baseline becomes the yardstick for your first hunts.&lt;/p&gt;</description></item></channel></rss>