<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Ryan Basden</title>
    <link>https://ryanbasden.com</link>
    <description>Writing on security, technology, and related topics.</description>
    <language>en-us</language>
    <image>
      <url>https://ryanbasden.com/favicon.png</url>
      <title>Ryan Basden</title>
      <link>https://ryanbasden.com</link>
    </image>
    <atom:link href="https://ryanbasden.com/rss_content.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>Everyone Has A Plan Until They Get Punched In The SonicWall</title>
      <link>https://ryanbasden.com/blog/song-of-heists-and-drive-bys/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/song-of-heists-and-drive-bys.html</guid>
      <pubDate>Sun, 02 Aug 2026 00:00:00 +0000</pubDate>
      <description>Why any organization with a public IP has to plan for un-patchable zero-day exploitation, not just targeted attacks.</description>
      <content:encoded><![CDATA[<figure>
<img src="https://ryanbasden.com/assets/blog/song-of-heists-and-drive-bys-1.webp"
alt="Terminal output of python3 badblood.py --help showing a large ASCII-art BADBLOOD banner above usage text reading ‘SonicWall SMA-100 Series Stack-Buffer Overflow Exploit (CVE-2021-20038).’" />
<figcaption aria-hidden="true">Terminal output of
<code>python3 badblood.py --help</code> showing a large ASCII-art
BADBLOOD banner above usage text reading ‘SonicWall SMA-100 Series
Stack-Buffer Overflow Exploit (CVE-2021-20038).’</figcaption>
</figure>
<p>“Who would actually go after us, anyway?”</p>
<p>A former client asked me this while refusing an internal
vulnerability assessment. Months later, they called me back — after a
ransomware gang had already answered the question for them.</p>
<p>“Who would actually go after us, anyway?” they had asked, invoking
the minimum requirements for their <a
href="https://empiricsecurity.substack.com/p/how-shadow-incentives-harm-real-security">annual
SOC 2 audit</a>, which didn’t <em>really</em> require penetration
testing to begin with.</p>
<p>They were a small business in a small city serving mostly local
customers. To them, they held nothing of value to a hacker, so narrowing
their pentesting scope to their external IP address made plenty of
sense.</p>
<p>That is, until someone exploited a fresh, <a
href="https://nvd.nist.gov/vuln/detail/CVE-2021-20038">critical
vulnerability</a> in their office SonicWall and locked them up with
ransomware hours after disclosure.</p>
<p>No patch available, no way to stop the perimeter break.</p>
<p>Unfortunately yet predictably, I heard from my old client soon after
they recovered from the ransomware attack, and we did a comprehensive
set of assessments of their internal security posture.</p>
<p>We did a lot of good in those assessments, but only after they had
already lost operating capital and taken a heavy reputation hit, far
more than the cost of an internal assessment.</p>
<h2 id="where-the-model-breaks-down">Where the Model Breaks Down</h2>
<p>See, when a zero-day exploit drops, two clocks start ticking: one is
the <strong>heist</strong> clock, which counts down to when you’ll be
specifically targeted. Maybe you’ve been on someone’s list of high-value
targets for a while, and all they needed was the right moment to
strike.</p>
<p>The other is the <strong>drive-by</strong> clock, ticking down to
when the exploit will be indiscriminately sprayed across the internet,
hitting every digital door in the TCP/IP neighborhood to see who has a
faulty lock.</p>
<p>Unless you’ve been paying attention, you won’t know which clock you
should have been watching <em>until it’s too late.</em> And as much as I
dislike having this conversation after misfortune has befallen someone’s
domain controller, it is usually the first time they’re willing to
listen.</p>
<p>The internet is a great and terrible equalizer in this regard. Any
organization, big or small, could be using a vulnerable appliance with
an IP address.</p>
<p>Some of them learned this lesson seven years earlier in 2014 (though
still the hard way) with <a
href="https://nvd.nist.gov/vuln/detail/CVE-2014-0160">Heartbleed</a>,
one of the most reliable remote code execution (RCE) vulnerabilities in
recent memory.</p>
<p>Sometimes, you don’t even need to be a company to feel the
consequences. You just have to <a
href="https://www.theverge.com/23742425/kia-boys-car-theft-steal-tiktok-hyundai-usb">drive
a Kia or Hyundai</a>.</p>
<p>If you’re only expecting a heist, you won’t see the drive-by
coming.</p>
<h2 id="the-missing-third-piece">The Missing Third Piece</h2>
<p>For much of my career, I’ve taken the controversial but undefeated
stance that unless you have the following three things, your security
apparatus is inherently flawed and unreliable:</p>
<ol type="1">
<li><strong>Asset Inventory</strong>—you can’t protect what you don’t
know you have.</li>
<li><strong>Network Map</strong>—If you don’t know how critical assets
talk to each other, an attacker will probably figure it out for
you.</li>
<li><strong>Threat Model</strong>—What are you protecting, how are you
protecting it, and whom are you protecting it from?</li>
</ol>
<p>The question “Who would actually go after us, anyway?” is humility or
hubris depending on who is asking it.</p>
<p>One can only begin to construct a threat model with the answers to
this question, but instead, many unaware organizations weaponize it
against having to spend money on something they don’t see as
worthwhile.</p>
<p>In the best cases, they never have to find out what their threat
model is. At worst, someone comes along and shows them, often quickly
and painfully, just how much they actually had that was worth
taking.</p>
<p>Customer information, credit card numbers, bank account credentials,
and even just plain old cash to pay a ransom are more than enough for
someone to include you in their scanning target list.</p>
<h2 id="defensive-steps-that-matter">Defensive Steps That Matter</h2>
<p>It’s past time we changed the way we think about the likelihood part
of risk measurement. Or, at least, non-patchable zero-day exploitation
needs to be a part of every single company’s regular risk
assessment.</p>
<p>The likelihood of a zero-day being tested against your environment is
determined by whether you have IP addresses in the 0.0.0.0/0 space and
whether you have computer systems attached to those addresses, not by
the value of your data or the size of your organization.</p>
<p>The mitigations are boring but impactful. Here’s where to start:</p>
<h3 id="get-a-full-inventory">Get a Full Inventory</h3>
<p>If you’re going to spend money on an appliance or a piece of
software, make it one that most reliably identifies your assets. This
will require some manual validation, but the visibility is worth it.</p>
<p>Once, I performed an external network assessment for a company that
had several data center colocations with systems in their racks that
were decades old. When I found a server vulnerable to Heartbleed years
after it was disclosed and patched, I couldn’t believe it.</p>
<p>Neither could they, since the IP address and hostname didn’t appear
anywhere in their inventory.</p>
<p>I got the network admin’s VPN password from the first memory
dump.</p>
<h3 id="understand-what-is-reachable-and-from-where">Understand What Is
Reachable and From Where</h3>
<p>With an accurate inventory, mapping out the packet conversations
becomes much simpler. Passively capturing broadcast packets and
analyzing the sources and destinations will reveal more than you could
have imagined about how many systems may be interacting with each
other.</p>
<p>Even better, if you have the access to do so, perform more active
packet capturing on your switches and firewalls for unicast traffic to
see as much as possible. When you’ve mapped out your IP space and
correlated it with your asset inventory, you’ll have more than a lot of
organizations have.</p>
<p>Few things have given me headaches more than well segmented, highly
specific network setups in which there are only packet black holes.</p>
<h3 id="research-past-threat-activity">Research Past Threat
Activity</h3>
<p>Once you know what is in your environment and what it’s doing, you
can start looking at vendors and patch levels to understand what might
cause you problems without notice.</p>
<p>For example, if your SonicWalls are the only device between your
internal and external networks, a compromise can be a huge pain.</p>
<p>But if compromising the perimeter with a SonicWall exploit only
grants an attacker network reachability to a few key hosts in a
demilitarized zone (DMZ), and the firewalls between the DMZ and other
segments aren’t SonicWalls, the attackable surface reduces dramatically
without more unique exploits.</p>
<p>Exceptional threat modeling goes beyond this, however, and should
inform decisions you make about how networks and assets are segmented
away from each other based on what you need to protect.</p>
<p>As for where to start, begin by looking at your entire organization
and asking the following questions (stolen from <a
href="https://security.cms.gov/learn/cms-threat-modeling-handbook">Centers
for Medicare &amp; Medicaid Services</a>):</p>
<ol type="1">
<li><p><strong>What are we working on?</strong></p>
<p>What features are we building/network segments are we concerned
about/software do we currently use, etc.?</p></li>
<li><p><strong>What can go wrong?</strong></p>
<p>Can it go down? Can someone bring it down? Is it already vulnerable,
or could it become vulnerable based on past experience and
research?</p></li>
<li><p><strong>What are we going to do about it?</strong></p>
<p>Can we eliminate risks entirely? Can we mitigate risks we cannot
eliminate? How do we test the efficacy of changes we make?</p></li>
<li><p><strong>Did we do a good enough job?</strong></p>
<p>Did the changes make a difference? Is there anything we overlooked?
Can we improve on the improvements we made? Can we apply these
improvements in other areas?</p></li>
</ol>
<p>And then, repeat.</p>
]]></content:encoded>
    </item>
    <item>
      <title>You Can't Just Publish Partial Exploits Anymore</title>
      <link>https://ryanbasden.com/blog/partial-exploits/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/partial-exploits.html</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 +0000</pubDate>
      <description>Now published at Xora: taking a 'safely' disclosed WordPress RCE most of the way to a full unauthenticated exploit chain with public research and an LLM.</description>
      <content:encoded><![CDATA[<p>This one ended up over at Xora, so that’s where it lives for now:
<strong><a
href="https://blog.getxora.ai/2026/08/19/wp2shell-a-build-your-own-exploit-adventure/">wp2shell:
A Build-Your-Own-Exploit Adventure</a></strong>.</p>
<p><strong>TL;DR</strong>: Hadrian published research on an
unauthenticated WordPress RCE and deliberately left the exploit details
out, to give administrators time to patch. I wanted to know if
withholding still buys anyone time in a post-LLM era. So, I tried
building the missing piece of the exploit chain from just the public
write-up and the patch diff.</p>
<p>It worked, and the little piece of withheld detail ended up not worth
much.</p>
]]></content:encoded>
    </item>
    <item>
      <title>One Home for Everything I Write</title>
      <link>https://ryanbasden.com/blog/one-home-for-everything/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/one-home-for-everything.html</guid>
      <pubDate>Thu, 30 Jul 2026 00:00:00 +0000</pubDate>
      <description>Consolidating my scattered writing under one roof, without giving up digital ownership.</description>
      <content:encoded><![CDATA[<p>I have constantly struggled with my writing “identity”.</p>
<p>There are so many things I want to write about: information security,
technology, philosophy, overcoming the fear of death…it’s a long
list.</p>
<p>To solve this problem, I’ll be posting everything here in one form or
another, following the <a href="https://indieweb.org/POSSE">POSSE</a>
method of publishing, a.k.a. “publish (on your) own site, syndicate
elsewhere”:</p>
<ol type="1">
<li>If I wrote for personal purposes, it will be here, and will be
republished to <a href="https://substack.com/@ryanbasden">Substack</a>
for people who want that over <a href="https://ryanbasden.com/follow.html">RSS/Atom
feeds</a>.</li>
<li>If I wrote for one of my other publications (like <a
href="https://empiricsecurity.substack.com/">Empiric Security</a>), it
will appear here as an original and there as a copy.</li>
<li>If I wrote for someone else’s publication, it’ll be posted here as a
link post with an <code>archive.org</code> link in case the live content
ever disappears.</li>
</ol>
<p>This is mainly so following and interacting is easier while
maintaining my digital ownership. If sites ever disappear or become
paywalled, you can always access versions of the content on my site
(unless I’m the one who removes it, of course). Not everyone is going to
set up an RSS reader, and that’s fine.</p>
<p>I’ll do a more comprehensive post on POSSE and the IndieWeb soon.</p>
]]></content:encoded>
    </item>
    <item>
      <title>What To Do With Bad Ideas From People Who Also Have Good Ideas</title>
      <link>https://ryanbasden.com/blog/what-to-do-with-bad-ideas/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/what-to-do-with-bad-ideas.html</guid>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <description>On consuming valuable ideas from people whose other beliefs you find repugnant, and why avoidance is the choice to be passive.</description>
      <content:encoded><![CDATA[<p>There is a book on my shelf by someone who believes a carnivore diet
cures depression, amplifies climate change denial, and has repeated
Russian talking points about the invasion of Ukraine.</p>
<p>He opposes the death penalty, doesn’t think you can stop smoking
without divine intervention, and believed at least for a moment - that
China was “milking” the genitalia of its male citizens to remedy its
population issues.</p>
<p>Despite it all, I hold on to this book and regularly lend it out to
people.</p>
<p>If you haven’t gathered by now, I am referring to Jordan B. Peterson,
and the book on my shelf is <em>12 Rules for Life: An Antidote for
Chaos</em>.</p>
<p>My curiosity about things that outrage people made me purchase a copy
some time in 2019. I knew nothing about Peterson at the time, other than
that someone on Twitter had posted a photo of a young man across from
them on the New York subway who was reading the book, with a caption
that expressed disapproval at the man’s choice of reading material.</p>
<p>It’s been years since I saw it so I have no links to share, but I
have no need to fabricate a story to support the idea that many women
have poor opinions of Peterson and his fans, even around the time of the
book’s publishing. A little Googling will show you as much.</p>
<p>Now, I had never seen someone express such distaste for someone
reading something written in my lifetime. Perhaps if the man had been
reading <em>Mein Kampf</em>, assuming that he’s not reading it for
historical education (there <em>are</em> people who have done so without
being Nazis, mind you), I could understand her negative feelings.</p>
<p>But I knew nothing about this book, so I looked into it, and found
that it was written by a Canadian professor as a self-help book, and
that it was based on his <a href="https://archive.is/FtsCU">rather
popular response to a question</a> on the website Quora about “valuable
things everyone should know”.</p>
<p>Reading through the lines in the post, I couldn’t find a single
“valuable thing” that was even remotely controversial. Naturally, I had
to buy the book to find out what the uproar was about.</p>
<p>What I found was useful. What I also found was that usefulness and
moral cleanliness aren’t always packaged together, and that refusing to
acknowledge the former because of the latter is a choice with real
consequences.</p>
<p>Now, I don’t think the book <em>needed</em> to be a book. Many of the
books written these days could really be blog posts, in my opinion, but
they tend to make the authors a lot of money, so they can do what they
want. While I got less out of it than others based on the reviews, I
would say the “rules” are generally good pieces of advice that anyone
would do well to incorporate into their way of conducting their own
lives. At worst, they’re harmless aphorisms that one can ignore and go
about their day.</p>
<p>But together, they were nothing close to the sort of material that
should draw the ire of strangers.</p>
<p>Ultimately, I keep the book for a few reasons:</p>
<ol type="1">
<li>I like to lend books to people that I think they’ll benefit from,
and some of my close friends (especially the ones who make fun of
Peterson the most) could really get something out of rules like “Tell
the truth – or, at least, don’t lie”, or, “Treat yourself like someone
you are responsible for helping.”</li>
<li>When other people visit my house who read, they inevitably wander
over to my bookshelf and a good conversation starts based on something
they see.</li>
<li>It is now a monument to my carefully honed ability to appreciate
good ideas put forth by people who also have some really bad ideas.</li>
</ol>
<h2 id="tolerance-thresholds-are-arbitrary">Tolerance Thresholds Are
Arbitrary</h2>
<p>The other day, a friend of mine messaged me out of the blue and
said:</p>
<blockquote>
<p>“I am so unsure of how to proceed when I read something I enjoy on a
topic and then realize the author has deeply problematic views on other
topics”</p>
</blockquote>
<p>This is like drugs for me. I thrive on this sort of dilemma, and few
things matter more to me than discussing them, hopefully leaving with a
better understanding of my own thoughts as well as others’. My friend
followed up with:</p>
<blockquote>
<p>“…if I read a piece of info on something totally random…then I start
following that person and a few days later they post something totally
unhinged about how climate change is a hoax or something…”</p>
</blockquote>
<p>I sat on it just long enough to trust my first thought. Fortunately,
I had dealt with this feeling myself many times. Years ago, I developed
an interest in document typesetting with LaTeX, but found most of the
documentation difficult to follow. Then came <a
href="https://www.youtube.com/watch?v=NwnYHoNtfJ0&amp;list=PL-p5XmQHB_JSQvW8_mhBdcwEyxdVX0c1T">Luke
Smith’s tutorial playlist</a> to the rescue, taking me in a single
afternoon from clueless to compiling the majority of my data science
university paper into a gorgeous, academically pleasing format.</p>
<p>Slowly, I discovered many of his videos touched on more things I
liked, such as extending Vim with plugins and running free software in
place of proprietary software. What I didn’t know until a bit later was
that, despite agreeing with him about things like <a
href="https://lukesmith.xyz/articles/everyone-should-be-avoiding-docker/">Docker
being excessive and overkill</a> and <a
href="https://lukesmith.xyz/articles/only-use-old-computers/">older
ThinkPads being amazing laptops</a>, we were not standing on common
ground on things like COVID-19 precautions and <a
href="https://videos.lukesmith.xyz/w/wj7oft16VLYhCM9E5EoFVf">anthropogenic
climate change</a>.</p>
<p>In the throes of 2020, the former disagreement took an emotional
toll. I had no parasocial relationship with Luke Smith to speak of, but
the mere presence of COVID-19 denialism in my field of consciousness, to
any degree, was difficult to contend with. I had friends who had lost
loved ones to COVID infection, and I knew people personally who had to
be hospitalized, one of whom is still on a ventilator to this day.</p>
<p>I responded:</p>
<blockquote>
<p>“One must dispel with the notion that valuable insight can only come
from who we see eye to eye with above a predetermined threshold.”</p>
</blockquote>
<p>You can’t only listen to people whose beliefs match yours to a
maximum possible percentage.</p>
<p>Now, the next hypothetical dilemma my friend posed to me was of a
blog feed consisting mostly of helpful and useful server hosting guides
but also the occasional post full of support for Neo-Nazi ideas.</p>
<p>“At what point would you unsubscribe?”, they asked me.</p>
<p>The real question was this: where was my predetermined threshold, and
how would I quantify it?</p>
<p>I realized the threshold is, in all cases, entirely arbitrary. We
don’t walk around (or, at least, I don’t) with an inventory of current
issues and our corresponding stances constantly at the fronts of our
minds, ready to perform the necessary calculus on the fly to determine
if someone else, either passing us on the street or sitting in our
living room, is worth listening to based on some kind of acceptable
agreement quotient.</p>
<p>If you do this, you have my sympathy because it sounds miserable and
exhausting.</p>
<p>Given how arbitrary (read: emotional, and perhaps even instinctual)
such a threshold <em>felt</em> to me, I would unsubscribe when the
content I came for became too rare to be worth it.</p>
<blockquote>
<p>“What if it’s a paid newsletter?”</p>
</blockquote>
<p>Financial support of bad ideas was now part of the equation. As I
said, I love this stuff. Starting with a 50/50 split:</p>
<p>Ignoring how unwise of a content marketing strategy it would be, if
every other post from an individual to whom I send 10 dollars per month
to support the publishing of content I like (server hosting guides and
tips), is about something I don’t like (Neo-Nazi talking points), five
of my dollars could be considered to be funding the Neo-Nazi bile.</p>
<p>But what if I think the server guides are worth the full ten dollars?
Could someone reasonably accuse me of being a Neo-Nazi funder and
enabler, or does it matter what I believe I’m paying for? Who gets to
decide how much of my contribution may be immoral?</p>
<p>What if I follow the content creator specifically so I can stay up to
date on Neo-Nazi talking points and movements, because like <a
href="https://www.youtube.com/watch?v=ORp3q1Oaezw">the wonderful Daryl
Davis</a>, I have a vested interest in being able to affect change
through understanding of viewpoints that oppose my own?</p>
<p>Am I still financially enabling a Nazi to spread hateful ideas, or am
I using those ideas in a way that allows me to counteract their
spread?</p>
<p>Somewhere in the middle, now, what if I have no interest in the Nazi
content and simply ignore it, while staying subscribed? Where does this
place me ethically?</p>
<h2 id="approaching-our-guillotines">Approaching Our Guillotines</h2>
<p>Outside of the law, we have to be careful not to make moral judgments
for anyone other than ourselves lest we fall victim to hypocrisy.</p>
<p>Now, I know what you might be thinking: there are some very obvious
moral positions that any reasonable person can be expected to take. I
would agree with you, but I would also challenge you to come up with any
that are not already prohibited by established laws of the land.</p>
<p>I’m not suggesting murder is acceptable. We have laws against murder
that we enforce, and that’s good enough for me.</p>
<p>But there are no laws around reading someone’s opinions, nor
supporting someone’s opinions, as long as those opinions are protected
by the First Amendment.</p>
<p>The hypocrisy I’m referring to is more difficult to spot, especially
in ourselves, as it is usually hidden behind one or more of what Albert
Camus refers to as an “abstraction”, or the prioritizing of reason over
human feeling, that is, the feelings of other humans. He describes the
breaking down of one such abstraction held by his father in <a
href="https://theanarchistlibrary.org/library/albert-camus-reflections-on-the-guillotine#toc1">Reflections
on the Guillotine</a>, describing his father’s demeanor before and after
witnessing a public execution.</p>
<p>In short, despite his father’s morning excitement about attending an
execution, the visceral reality of actually watching another human’s
life taken by beheading broke through any abstraction between his
perception of a guillotine and the very real consequences of its
operation. He came back home and proceeded to vomit, forever
changed.</p>
<p>It is much easier for us to plant moral flags with things we have not
witnessed ourselves, and this extends to the humans behind the ideas we
reject, even justifiably.</p>
<p>Unsubscribing from a blog consisting of mixed content that we
<em>can</em> see does not absolve us from complicity in other morally
questionable situations, such as buying cheap items from Temu <a
href="https://apnews.com/article/temu-shein-forced-labor-china-de7b5398c76fda58404abc6ec5684972">made
with slave labor</a> under a regime currently performing an <a
href="https://www.bbc.com/news/world-asia-china-22278037">ethnic
cleansing on its own people</a> that we <em>cannot</em> see.</p>
<p>Or, perhaps, you’ve already forgotten that Chinese workers building
Apple’s iPhones were committing suicide so often that the <a
href="https://archive.is/78Tlm">factory had to install nets to catch
those who jumped off the roof</a>.</p>
<p>Are you staunchly anti-Trump yet <a
href="https://www.theverge.com/news/737757/apple-president-donald-trump-ceo-tim-cook-glass-corning">still
buying Apple products</a>?</p>
<p>If you’ve never bought anything from Temu, you need only look in your
refrigerator for food that likely came from supply chains <a
href="https://www.youtube.com/watch?v=tnykmsDetNo">incorporating factory
farming practices designed around the abuse of animals</a>.</p>
<p>Do you dislike the concept of billionaires but <a
href="https://growthdevil.com/amazon-prime-statistics#Amazon_Prime_Revenue_Statistics">can’t
imagine cancelling your Prime subscription</a>?</p>
<p>Does the idea of having to <a
href="https://quarter--mile.com/Moo">slaughter your own cow to continue
eating beef</a>, one of the most environmentally detrimental foods of
all time, make you as viscerally uncomfortable as it makes me?</p>
<p>More than likely, you are already a supporter of something that would
horrify you to witness. There are just miles between you and the
inconvenient truth behind your luxuries and comforts.</p>
<h2 id="whataboutism-for-me-but-not-for-thee">Whataboutism For Me, But
Not For Thee</h2>
<p>This may seem like “whataboutism”, or responding to an accusation
with an accusation of your own. However, my goal in mentioning Apple
products and factory farming isn’t to elevate myself to a position of
superior morality. I’m not here to interrogate the areas in your life
where you feel cognitive dissonance.</p>
<p>We must be aware of our own dissonances before we hold anyone else to
standards we’ve established in our minds, whether we’ve done so on the
fly or years prior. By engaging in counter-accusations with
<em>ourselves</em>, we can begin to take inventory of our own ethical
shortcomings.</p>
<p>With this comes a sense of inferiority, and as has happened with some
of my friends, a particularly grating brand of fatalism.</p>
<p>I once overheard someone talking about some news that another
celebrity had been accused of using exploitative labor for one of their
personal clothing brands (I don’t remember who it was because I don’t
care about celebrities), saying:</p>
<blockquote>
<p>“There is no ethical consumption under capitalism.”</p>
</blockquote>
<p>Processing that statement in my mind was like trying to jam a square
peg into a round hole. It simply didn’t feel right. What, then, was the
point of all the fair-trade commerce initiatives of recent years? Do
brands like TOMS, Bombas, and Marine Layer really have no impact by
donating or recycling clothing? What is this perfect “ethical”
designation that, if they can’t secure for themselves, makes them as
unethical as companies that sell fast fashion on the backs of
children?</p>
<p>If a perfectly ethical business model isn’t realistic, what is the
point of any of it? Is there truly nothing between perfectly ethical
operation and absolute moral bankruptcy?</p>
<p>Is going vegetarian worth nothing in the shadow of veganism?</p>
<p>Is buying from <a
href="https://www.bcorporation.net/en-us/movement/">B Corps</a> with
mostly good scores no better than from big box stores?</p>
<p>Is paying $5 per month for a blog subscription that is 50%
regurgitated, asinine neo-Nazi bullshit worse than actively feeding a
profit model that can only survive on slave labor?</p>
<h2 id="ethics-is-not-about-efficacy">Ethics is Not About Efficacy</h2>
<p>Let’s use veganism as an example. For full disclosure, this is one of
my personal cognitive dissonances that I am currently tracking and
working through myself.</p>
<p>Perhaps one person - me, in this example - becoming vegan will have a
nigh immeasurable impact on the atrocities of factory farming. However,
if I see such treatment of animals as a horrific moral failing, should
that not be enough for me to change?</p>
<p>Imagine, for a moment, that you live in 18th century in the United
States of America. Slavery is an enormous enterprise and the basis for
much of the economic power ready for the taking. Despite knowing that
owning slaves is a horrific moral failing, you know that refusing to
participate in the exploitation of slave labor won’t make much of a dent
in the Atlantic slave trade.</p>
<p>The refusal to own slaves being the right thing to do seems
self-evident, does it not?</p>
<p>Yet you participate in the system anyway, because not doing so won’t
bring about the kind of change required to make a true difference.</p>
<p>To do so would be to abandon the non-ideal in favor of simply
grieving the ideal. John Rawls discusses how <a
href="https://plato.stanford.edu/entries/rawls/#IdeNonIdeThe">ideal
theories beget non-ideal theories</a> that are more realistically
applicable across disparate individuals and societies.</p>
<p>Choosing to own slaves in the 1700s simply because not doing so
wouldn’t bring about the ideal state of society is a cop-out of massive
proportion. If ethos itself is asymptotic, our best approaches still
matter.</p>
<p>The calculus of moral action has never been the point. What we do
with the ideas in front of us is.</p>
<h2 id="ideas-and-words-i-disagree-with-cannot-hurt-me">Ideas and Words
I Disagree With Cannot Hurt Me</h2>
<blockquote>
<p>Interesting. How does “if ideas and words I disagree with can’t hurt
me” relate to the idea of bringing in low quality things into your
“brain-attic”? For instance, when I open my RSS feed I’d rather not even
see Nazi talking points even if they’re just words on the screen for 10
seconds…</p>
</blockquote>
<p>By “brain-attic”, they were referring to the rather hilarious
conversation between John Watson and Sherlock Holmes, during which
Holmes reveals that <a
href="https://news.ycombinator.com/item?id=3605300">he wasn’t aware of
the Solar System</a> and had no intention of remembering it at all.</p>
<p>The mind is a finite space, and the conscious mind even more so. What
we allow into it is up to our discretion. But the allowance or dismissal
of ideas is not equivalent to their existence in our field of
consciousness, which is <em>not</em> entirely up to our discretion.</p>
<p>As I mentioned before, during the height of the COVID-19 pandemic,
clearly ridiculous stances on wearing masks or conspiracy theories about
Anthony Fauci were exhausting and stressful for me. But despite the
difficulty of managing that reaction, how I felt was not out of my
control. Unfortunately, I didn’t learn this until much later.</p>
<p>I don’t blame myself for my reaction. The pandemic was a difficult
time. Many people struggled as much or more than I did, and seeing
myself as deficient for not being able to control my reactions to such
new and enormous problems would be unfair.</p>
<p>But what is it about reading even the headline of a post full of
pro-Nazi prose that would bother my friend so? I can think of several,
quite fair reasons:</p>
<ul>
<li>The reminder that such hateful ideologies exist and are held by
people today makes us sad because we don’t like that others might be
marginalized or hurt by it.</li>
<li>We have family members that also espouse similar or related
ideologies and that, as a matter of course, makes us sad or angry, and
the post title is a reminder.</li>
<li>It is a reminder of the state of American politics which, depending
on which voter base you’re in, can be distressing all by itself.</li>
<li>…and so on.</li>
</ul>
<p>However, trauma, no matter how large or small, is inflicted upon us
by our <em>perceptions</em> of things or events, not the things or
events themselves. No matter how controversial such a statement may be
to many, this is well established and understood among the psychological
community.</p>
<p>To quote Alfred Adler, the father of individual psychology:</p>
<blockquote>
<p>No experience is a cause of success or failure. We do not suffer from
the shock of our experiences, so-called trauma - but we make out of them
just what suits our purposes.</p>
</blockquote>
<p>Trauma is very real, but it is not inevitable. Things affect us
because we <em>allow</em> them to affect us, a principle at the basis of
cognitive behavioral therapy.</p>
<p>Our allowance of things to affect us is <em>not always conscious, nor
can we be blamed for it</em>.</p>
<p>No one should blame victims of rape for struggling with having
healthy sexual encounters, no matter how safe they are in reality, and
no matter how much trust they have in their partner, and this
consideration extends to all forms of trauma from all sources.</p>
<p>Instead, we can choose to “critically ignore” information that is
false, inflammatory, or personally distressing, similarly to what the
authors of <em><a
href="https://journals.sagepub.com/doi/10.1177/09637214221121570">Critical
Ignoring as a Core Competence for Digital Citizens</a></em> mention in
<em>Current Directions in Psychological Science, Volume 32</em>. While
that study doesn’t necessarily address our emotional responses to ideas
that we don’t like, the function of choosing what to do with information
presented to us is one worth acknowledging.</p>
<p>The idea that we have a measure of control over how things affect us
is not new. Born into slavery in 50 CE, the Stoic philosopher Epictetus
said:</p>
<blockquote>
<p>It’s not what happens to you, but how you react to it that
matters.</p>
</blockquote>
<p>Epictetus was touching on a very real science behind controlling our
stress responses by consciously relocating our attention from our
amygdala (the part of the brain where survival mechanisms sit) and the
prefrontal cortex (the part of the brain used for higher order cognitive
functions).</p>
<p>Ideas we don’t like or that make us uncomfortable exist whether we
are thinking about them or not.</p>
<p><em>Seeing</em> a post from a neo-Nazi that isn’t the server
maintenance expertise you sign up for doesn’t make them more of a
neo-Nazi. It doesn’t create more neo-Nazis out of thin air if I read the
entire post instead of ignoring it, just like it doesn’t make server
administrators smarter or more plentiful when I read about how to
efficiently migrate storage volumes.</p>
<p>Pretending the bad ideas don’t exist doesn’t make them go away, and
reacting to them in any way at all only gives them power.</p>
<h2
id="avoidance-of-information-is-the-avoidance-of-influence">Avoidance of
Information Is the Avoidance of Influence</h2>
<p>Shielding oneself from Nazi blog titles (assuming you don’t click and
open the full post) doesn’t make them cease to exist, it only exempts
you from any opportunity to understand a contrary viewpoint, no matter
how detestable, and therefore from making any difference in the
direction or evolution of such ideas.</p>
<p>I then shared a picture of the bottom of my bookshelf, where I have a
few different translations of the Bible, the Book of Mormon, the
Bhagavad Gita, and the Koran.</p>
<p>Despite my previously monstrous amount of religious trauma from my
Christian upbringing, I don’t throw the Bibles out because their
contents bother me, no matter how many problems I fundamentally have
with them. I keep them, and have gathered other religious texts, because
I seek to understand.</p>
<p>I seek to effect change.</p>
<p>If one avoids bad ideas, it follows that one does not know much about
them. Logically, not knowing about bad ideas limits one’s ability to
change the minds of those who hold them.</p>
<p>The choice to avoid knowing is the choice to be passive.</p>
<p>There is a fashionable shorthand for the refusal to engage: the
paradox of tolerance. The argument, borrowed selectively from Karl
Popper’s <em>The Open Society and Its Enemies</em>, goes roughly like
this: a tolerant society is not obligated to tolerate intolerance,
therefore you are absolved from having to sit across from it.</p>
<p>What the people deploying this argument rarely mention is that
Popper’s prescribed response to intolerance was reasoned debate and
public argument, not expulsion. Suppression without argument was his
last resort, reserved for movements that had already abandoned reason
and resorted to violence. The people invoking Popper to justify blocking
and muting and no-platforming have not read the book they are citing.
Daryl Davis has a better conversion rate.</p>
<p>And if Davis, a black man, can sit across from member after member of
the Ku Klux Klan and other associated hate groups and have a civil
discussion with them, why can’t you or I?</p>
<p>Until someone can show me a higher Klansman conversion count than
Davis’ count (which, according to NPR, <a
href="https://www.npr.org/2017/08/20/544861933/how-one-man-convinced-200-ku-klux-klan-members-to-give-up-their-robes">is
at least 200</a>) that resulted from such internet tough guy strategies
as “punch Nazis”, I’m not going to close my mind off to ideologies
simply because they are repugnant.</p>
<blockquote>
<p>“If you’re interested in being on the right side of disputes, you
will refute your opponents’ arguments. But if you’re interested in
producing truth, you will fix your opponents’ arguments for them. To
win, you must fight not only the creature you encounter; you must fight
the most horrible thing that can be constructed from its corpse.”</p>
<p>– Black Belt Bayesian</p>
</blockquote>
]]></content:encoded>
    </item>
    <item>
      <title>Infosec Training Is Weird Now</title>
      <link>https://ryanbasden.com/blog/infosec-training-is-weird-now/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/infosec-training-is-weird-now.html</guid>
      <pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate>
      <description>Enshittification comes for us all.</description>
      <content:encoded><![CDATA[<p>Back in 2009 when I made the jump from shoddy game hacking to - ahem
- hacktivism (no, I will not elaborate further), the only well known
certification of ability was the Certified Ethical Hacker (CEH) from
EC-Council. They <a
href="https://www.eccouncil.org/ec-council-in-news/ec-councils-launches-the-worlds-first-performance-based-ethical-hacker-certification-ceh-master">claimed
the honor</a> of creating the “first performance based ethical hacker
certification”.</p>
<p>Whether that was accurate or not will have to be verified by truer
veterans, but it certainly wouldn’t stay “performance based” for very
long. The exam eventually got shorter and there was nothing practical
about it, at least not when I took it in 2016.</p>
<p>CEH existed but was irrelevant to me. As a broke middle-schooler
discovering computer hacking, one meager year after the release of the
infamous <em>Hacking: The Art of Exploitation, 2nd Edition</em>, any
money I had to my name was going to Lego sets and airsoft. All my
learning took place in forums and IRC channels, the logical successors
of the post-BBS online hacking scene.</p>
<p>I learned how to use Nmap by reading <a
href="https://nmap.org/book/man.html">the documentation</a>.</p>
<p>I learned SQL injection <em>after</em> learning SQL first, how to use
Linux by setting up file shares and web servers for my friends, and how
to write malware by convincing the right people that I was worth sharing
source code with.</p>
<p>Then came the OSCP. The certification that proved you knew your
shit.</p>
<p>24 hours in a lab with machines to hack, points to earn, and a report
to write with what little energy you had left. It was a badge of honor
that demanded respect, and few people had it. But enshittification comes
for all, and once the OSCP landed in a job posting under “preferred
qualifications” for the first time, our journey as an industry to where
we are now officially began.</p>
<p>The OSCP became a nigh-invincible staple for recruiters in the 2010s.
Offensive Security, the company who designed the course and proctored
the exam, realized they could make it a revenue engine — and so began
what would eventually become a certification “ecosystem.”</p>
<p>Soon came other certifications like the original OSCE, a more
advanced version of the OSCP that placed heavy emphasis on binary
exploitation, as well as web and Wi-Fi oriented courses, all of which
became household names for security professionals across the world.</p>
<p>OffSec had struck a gold mine, but they weren’t going to get away
with keeping it to themselves.</p>
<h2 id="the-little-disruptors-that-couldnt">The Little Disruptors That
Couldn’t</h2>
<p>See, the value of the certification itself had gone up. Now there was
demand for it in the job market. When you purchased <em>Penetration
Testing with Kali Linux</em>, the companion course for the OSCP, it came
with an exam voucher. The certification itself was the value holder, not
the course content, since it was what proved you knew what you were
doing.</p>
<p>With the demand increase came rising costs, and the price hikes made
room for disrupters. HackTheBox and TryHackMe undercut the education
piece for a fraction of the cost by removing the credential from the
equation — with a far more accessible format than OffSec’s
do-it-yourself PDF and lab approach.</p>
<p>In a single, polished web platform where much of the content was
completely free, the early chapters of the penetration testing
methodological corpus had been effectively democratized. However, though
they had decoupled the credentials from the coursework and made
education more accessible, the signal was starting to get lost in the
noise.</p>
<p>The inevitable convergence of democratized training and credentials
that boosted hirability was not far off: PNPT, eJPT, and others, where
previously only CEH had any sway against the OSCP (not much, for obvious
reasons).</p>
<p>The skill set that had previously derived its value from context and
pre-existing technical background was now modularized, packaged, and
sold in shiny bundles built on publicly available resources. Credentials
attached, resume parsers happy.</p>
<h2 id="vc-deals-always-end-the-same-way">VC Deals Always End the Same
Way</h2>
<p>Running training platforms costs money. You can’t just have hundreds
of thousands of aspiring hackers spinning up little virtual machines to
run Nmap against 24/7 without bleeding money. Luckily, there’s a whole
industry that has made capital hemorrhaging their modus operandi:
venture capital.</p>
<p>Taking on external funding meant adopting the same primary directive
as every Silicon Valley unicorn that came before that always ends the
same way: make more money so we can all exit handsomely.</p>
<p>Investors need recurring revenue more than life itself. And it has to
go up, of course, so training platforms and companies turned to creating
their own certification ecosystems, leaderboards, all while keeping the
dream of employment alive, hoping to ride on the success of OSCP with HR
reps reviewing job applications.</p>
<p>HackTheBox introduced “VIP” that allowed you to hack on your own
target machine instead of the public ones that were getting reset all
the time. TryHackMe added premium learning paths that you could access
with a subscription.</p>
<p>One by one, they switched to recurring “all access” models — one easy
platform, a stack of acronyms, and a promise that it’s all you need to
land your dream hacking job.</p>
<h2 id="the-ai-pivot-is-just-the-latest-version">The AI Pivot Is Just
the Latest Version</h2>
<p>TryHackMe founder Ben Spring has a new company. NoScope sells an
AI-powered pentesting platform — not to practitioners, but to the
companies that hire them.</p>
<p>I’ve seen many reactions, the gist of which seems to be that a
company that made its name educating people to do actual work has
potentially used training data from people to build NoScope.</p>
<p>I get it - to an extent. There are approaches to practitioner
augmentation that are like Praetorian’s, <a
href="https://www.praetorian.com/blog/deterministic-ai-orchestration-a-platform-architecture-for-autonomous-development/">releasing</a>
what I imagine are open-source versions of internal tooling. Then, there
are profit-seeking approaches like NoScope, which sell their AI
augmentation tooling to companies for a fee.</p>
<p>This dichotomy has always existed. Sliver and Cobalt Strike, Nuclei
and Nessus - the open-source vs. paid divide has always been with us.
What’s different now is who is doing the <em>buying</em> and what
they’re being told it <em>replaces</em>.</p>
<p>AI “autonomous pentesting” — and even worse, “autonomous red team” —
is poised to be the next thing companies, not practitioners, want to
see. The race to a profitable exit is blatant, and it’s not going to
change.</p>
<p>Those two things are being sold to people who <em>buy</em> tools, not
<em>use</em> them. I’ll give you one guess which group is most upset by
it.</p>
<h2 id="what-to-do-about-it">What To Do About It</h2>
<p>The goal is money. It is almost always money.</p>
<p>If you learn genuinely useful tradecraft and grab a cert along the
way, great. But your professional development is not the primary purpose
of any flashy training platform — especially one backed by venture
capital or private equity.</p>
<p>So it’s up to you. Instead of outsourcing your education to companies
that don’t actually care about it, take it upon yourself to explore.</p>
<p>Set up a home lab. Augment your <em>own</em> workflow (you do have a
documented methodology, don’t you?) with open-source agentic tooling.
Use it to make yourself a force multiplier that can stand up one day in
the future and show a customer exactly why buying an expensive AI
pentesting tool was a risk calculation error.</p>
<p>Or, you know, don’t. Just don’t be surprised when you’re staring at
the back of the industry’s head as it flies away on this rocket
ship.</p>
]]></content:encoded>
    </item>
    <item>
      <title>How to Ensure Your Purple Team Fails Miserably</title>
      <link>https://ryanbasden.com/blog/how-purple-teams-fail/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/how-purple-teams-fail.html</guid>
      <pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate>
      <description>The misaligned incentives, on both the client and consultant sides, that doom most purple team engagements before they start.</description>
      <content:encoded><![CDATA[<figure>
<img src="https://ryanbasden.com/assets/blog/how-purple-teams-fail-1.webp"
alt="The ‘stick in bicycle wheel’ meme: a cyclist jams a stick into their own front wheel and crashes, the second panel captioned “purple teams are a waste of time.”" />
<figcaption aria-hidden="true">The ‘stick in bicycle wheel’ meme: a
cyclist jams a stick into their own front wheel and crashes, the second
panel captioned “purple teams are a waste of time.”</figcaption>
</figure>
<p>I’ve been on a lot of purple team engagements. Many of them produced
little value.</p>
<p>It wasn’t because the techniques were wrong, or the tools were bad,
or the teams lacked skill. They fell flat because everyone involved had
optimized for the wrong things.</p>
<p>But with contracts already signed and expectations already set, I had
to see purple team projects through regardless of how doomed they were
to begin with.</p>
<p>Both consulting firms and clients can conspire to torpedo a purple
team engagement, often without even realizing they’re doing so.</p>
<p>Here’s what actually goes wrong and why it keeps happening.</p>
<h2 id="the-client-side">The Client Side</h2>
<h3 id="you-treated-it-as-an-edr-benchmark">You Treated It as an EDR
Benchmark</h3>
<p>Pick your poison. Either you measured success purely by whether your
EDR fired an alert, or you skipped host-based testing entirely because
“EDR will catch it.”</p>
<p>I watched a team spend three hours troubleshooting why their endpoint
tool missed suspicious LDAP traffic that returned a list of
Kerberoastable users. They had only ever tested if their network
monitoring tools could see the exact kinds of patterns produced by
BloodHound, not boring, manually crafted LDAP queries from ADSearch.</p>
<p>I also had a client decide not to pursue other on-host testing
because their EDR caught vanilla Mimikatz.</p>
<p>Of course it did. It has for years. Meanwhile, none of them had
considered that running Task Manager as Administrator to accomplish the
same LSASS dumping goal should catch someone’s eye.</p>
<p>This does not count as testing your security program. You’re just
testing whether a vendor’s signatures still work.</p>
<h3 id="you-cant-write-your-own-detections">You Can’t Write Your Own
Detections</h3>
<p>If your entire detection capability is vendor-provided rules, you
don’t have a detection capability. You have a subscription.</p>
<p>Even half-decent attackers don’t match signatures. They use
living-off-the-land binaries, legitimate admin tools, and techniques
that look like normal operations until you understand the context. When
I simulate something that doesn’t trip a vendor rule — and that’s most
things — the response is usually “nothing we could do.”</p>
<p>There’s always something you could do. You just never built the
muscle to do it.</p>
<h3 id="you-had-no-idea-what-to-test">You Had No Idea What to Test</h3>
<p>I’ve kicked off engagements where the client’s answer to “what
threats are you most concerned about?” was a shrug. No threat
intelligence, no prioritized list of techniques, no understanding of
what adversaries actually target their industry.</p>
<p>So we tested whatever seemed interesting. The results showed gaps in
techniques that didn’t matter to their actual risk profile. We validated
defenses against nation-state tradecraft when ransomware groups were the
real threat. Everyone felt productive, but nothing notably useful
happened.</p>
<h3 id="the-report-went-to-sharepoint-to-die">The Report Went to
SharePoint to Die</h3>
<p>I’ve watched six-figure engagements produce reports that never left
their PDF form.</p>
<p>No one prioritized the findings by impact or stuck them in a
ticketing system to at least <em>appear</em> like they were interested
in improving. Without a framework for improvement, every finding is
equally important — which means none of them are.</p>
<p>Without an improvement strategy, your analysts will context-switch
between “we can’t detect Kerberoasting” and “we need better phishing
detection” until they burn out or quit, and you still have both
problems.</p>
<h3 id="you-thought-buying-tools-was-the-same-as-using-them">You Thought
Buying Tools Was the Same as Using Them</h3>
<p>This one’s universal, but it’s especially lethal here.</p>
<p>Lots of companies buy adversary detection platforms and never
configure them. Admittedly, “no configuration needed” is a strong
selling point, but if that also means “no configuration possible,” the
vendor is just saying “trust me, bro” and you’re believing it.</p>
<p>Money spent does not equal security achieved. Tools require people
and process. If you don’t have both, you have expensive shelfware.</p>
<h2 id="the-consultant-side">The Consultant Side</h2>
<p>This is the side I’ve spent almost all my time on, so get ready for
some precision-guided frustration.</p>
<h3 id="we-sold-purple-team-without-defining-it">We Sold “Purple Team”
Without Defining It</h3>
<p>The definition of “purple team” is loose enough that sales can pitch
almost anything under that label.</p>
<p>I can’t count the number of times sales promised what was effectively
a red team ride-along where the client could fix things along the way.
That is not a collaborative security improvement exercise. That is a
field trip.</p>
<p>We, the red team, showed up ready to collaborate on running attacks
and building detections, only to get stuck eating the cost of the sales
team’s sins and trying not to look incompetent while we “red team” the
client over a <em>screen share</em>.</p>
<p>The client ended up <em>watching us work</em> instead of <em>working
with us</em>.</p>
<p>Worst of all, purple team engagements are so commonly
<em>shorter</em> than red team engagements that the client ends up
getting a condensed red team exercise for a huge discount. Putting your
practitioners under immense pressure to compress a red team exercise
into a purple team timeline makes them miss things, burn out, and resent
the whole enterprise.</p>
<p>This happens constantly. “Purple team” means different things to
different people, and by the time the practitioner gets involved, the
contract is signed and the sales rep has moved on to the next deal.</p>
<h3 id="we-skipped-the-hard-scoping-questions">We Skipped the Hard
Scoping Questions</h3>
<p>It’s uncomfortable to ask “what’s your detection maturity?” when the
answer might be “we don’t really have any.” But if you deploy custom
malware against a team that doesn’t have EDR, or test for advanced
persistence against a team that can’t detect a <code>whoami</code>
command, you’ve wasted everyone’s time.</p>
<p>The engagement should meet the client where they are. That requires
asking questions that might make the deal smaller, or even turn it into
another project entirely.</p>
<p>Plenty of purple team clients need to be talked down to a penetration
test, but that’s not as profitable.</p>
<h3 id="we-over-engineered-instead-of-just-running-attacks">We
Over-Engineered Instead of Just Running Attacks</h3>
<p>Consulting outfits all share this weird curse where they have to
constantly optimize to squeeze just a little more profit margin out of a
good thing.</p>
<p>I’ve watched consulting teams spend months and months building the
ultimate purple team platform, only to never finish it. Every technique
automated. Every detection templated. Every report auto-generated.</p>
<p>Meanwhile, real attackers were just opening PowerShell and nobody had
validated whether anyone would notice.</p>
<p>The most effective purple teams start with documented attacker
tradecraft — the actual commands from real incident reports, MITRE
ATT&amp;CK, or even a recent pentest — and see what happens.</p>
<p>Sometimes that’s a Python script, and sometimes it’s literally typing
commands into a PowerShell window. The tooling is secondary to the
outcomes.</p>
<h2 id="both-sides-are-optimizing-for-theater">Both Sides Are Optimizing
for Theater</h2>
<p>The structural problem is that purple teams serve two masters with
conflicting incentives.</p>
<p>Clients want validation. They want to prove their security program
works, justify their tool purchases, and show the CTO a green dashboard.
A purple team that finds serious gaps is politically inconvenient.</p>
<p>It’s no easy feat to justify detection tooling that costs orders of
magnitude more than the project that just revealed its glaring
holes.</p>
<p>Consulting firms want billable hours and repeat business. Telling a
client their detection program is fundamentally broken doesn’t get you
invited back. Delivering a report full of findings they can’t action
doesn’t either.</p>
<p>And telling them they are nowhere near mature enough to benefit? Good
luck explaining that contract loss to the sales VP.</p>
<p>So both sides unconsciously optimize for theater. They run some
attacks, maybe generate some alerts, and write a red team report with a
collaborative spin. The auditors will love it, bless their little
hearts.</p>
<p>Everyone feels productive, but the underlying problems persist.</p>
<p>Breaking this cycle requires something uncomfortable: honesty about
current capabilities and realistic expectations about outcomes. Most
organizations aren’t ready for what a real purple team would reveal.
Most consultants don’t have the freedom to tell them, or worse, aren’t
<em>willing</em> to.</p>
<p><em>What’s the most reliable way you’ve seen a purple team exercise
fail? I’m always looking to expand this list.</em></p>
]]></content:encoded>
    </item>
    <item>
      <title>Ocean's Eleven Heists In a Louvre Four World</title>
      <link>https://ryanbasden.com/blog/oceans-eleven-louvre/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/oceans-eleven-louvre.html</guid>
      <pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
      <description>What real-world heists and insider-threat data reveal about who actually breaks into buildings, and what a physical penetration test is worth.</description>
      <content:encoded><![CDATA[<figure>
<img src="https://ryanbasden.com/assets/blog/oceans-eleven-louvre-2.webp"
alt="A still from Ocean’s Eleven: two thieves in black tactical gear and gloves work at a stainless steel vault door." />
<figcaption aria-hidden="true">A still from Ocean’s Eleven: two thieves
in black tactical gear and gloves work at a stainless steel vault
door.</figcaption>
</figure>
<p>Several months ago, some dudes climbed through a window of the Louvre
Museum at 9:30 in the morning and stole around $104 million worth of
French Crown Jewels.</p>
<p>They were dressed as construction workers.</p>
<p>The first time <em>I</em> <em>broke</em> into a building, I shimmed a
door latch from an emergency exit stairwell and walked in.</p>
<p>I was dressed as a guy who only owns gray t-shirts and black
jeans.</p>
<p>My project partner had already signed the office suite guest book (a
formality), used his toolbox and clipboard to make a convincing pitch
that he needed to do an off-schedule check of the fire alarms, and
gotten comfortable next to an exposed ethernet port.</p>
<p>So I joined him and we let our contact know that we had made it in
and no one seemed to care, kicking off the walkthrough part of the
project where we demoed badge cloning, opened some server room doors,
and talked through improvements they could make.</p>
<p>After, as we were packing up, our contact asked me a question I
thought I had the answer to: <em>how often do people actually commit
crimes this way?</em></p>
<p>I had no idea.</p>
<p>My quick internal logic told me that either there were Ocean’s
Eleven-esque heists happening all around corporate America all the time,
and no one was getting caught, or corporate office buildings don’t often
deal with break-ins at all and we were performing a novelty service.</p>
<p>But the Louvre heist was hardly Ocean’s Eleven (even calling it a
heist feels generous), and the impact was still enormous, especially
since most of what was stolen <a
href="https://www.abc.net.au/news/2026-02-06/louvre-heist-empress-eugenie-crown-to-be-restored/106312526">hasn’t
been recovered</a> as of my writing.</p>
<p>So what is the value of a physical penetration test, and why on earth
would you pay someone to break into your buildings?</p>
<p>I went to Florida to find out.</p>
<h2 id="the-gurus-on-mount-tampa">The Gurus On Mount Tampa</h2>
<p>Last month, I got to spend a few days cloning badges in coffee shops,
taking photos of security cameras from over a hundred feet away, and
bypassing locked doors to plant malware on laptops.</p>
<p>I was attending the <a
href="https://physicalexploit.com/training/in-person">Practical Physical
Exploitation</a> training course put on by Ralph May and Travis Weathers
of the <a href="https://mwgroup.io/">Mayweather Group</a>, and aside
from having fun in Florida with some friends while the rest of the
United States tried not to freeze to death, my goal was to understand
the basics of physical intrusion enough to start slowly building it into
my own services.</p>
<p>It wasn’t the first time I had used badge cloners or bypass tools,
nor was it the first time I had to socially engineer my way into a
restricted area, but I like to round out any knowledge gaps with good
training before I try and accept anyone’s money.</p>
<p>Exhausted by the intensity but invigorated by the fun, I spent the
plane ride home thinking through how I would communicate the importance
of physical security to a potential customer, which reminded me of the
story I opened this blog with.</p>
<p>There were two questions I felt I needed answers to:</p>
<ol type="1">
<li><p>Who do physical penetration tests help anyone defend
against?</p></li>
<li><p>Why is a physical penetration test a worthwhile
expenditure?</p></li>
</ol>
<p>My time in Tampa helped me with part of the first answer, which was
“anyone who could do any part of what we were doing”. Obviously a clone
of me who had defective intent (<em>bad</em> bad guy) instead of
cooperative intent (<em>good</em> bad guy) would be an obvious
threat.</p>
<p>We can also surmise that someone <em>more</em> skilled than I would
be a <em>bigger</em> threat, and someone <em>less</em> skilled would be
a <em>smaller</em> threat, but skills with a lock pick set don’t matter
to a brick if the door is made of glass, and why use my lock picks as
anything but paper weights if I have an undisclosed 0-day for your
firewalls?</p>
<p>The second question is harder to answer for any organization that
hasn’t already <em>dealt</em> with physical threats and, admittedly,
this wasn’t the focus of the course.</p>
<p>Much like when a company undergoes its first ever internal network
pentest, after which they realize how much - <em>ahem</em>, technical
liability - they’ve inherited from Active Directory’s “intended design”,
it is quite difficult to just <em>imagine</em> the impact, especially if
you’re not sure how anyone would go about making one.</p>
<p>“Why would anyone go after us?” the perennial question goes. Well,
have you ever considered what someone looking to make some money could
do with documents you leave out in the open?</p>
<p>Clearly, there are some margins of uncertainty to address, here. We
can do thought exercises all day, but I’m here to determine if one of
the best things you can do is just <em>let someone break in.</em></p>
<p>But let’s not get ahead of ourselves.</p>
<h2 id="who-are-these-people-anyway">Who Are These People Anyway?</h2>
<p>Somewhere in between fleecing the Las Vegas strip with George Clooney
and lifting candy from a convenience store are the real threats to
businesses, and when it comes to which ones anyone should pay attention
to - as with all things in security) - it depends.</p>
<p>In the end, I came up with five threat profiles that I would use for
threat modeling an organization, ordered by sophistication level:</p>
<ol type="1">
<li><p><strong>Petty Thieves</strong>: Opportunistic with access to
basic, commercially available tooling if not just a bat they can break
glass with. They’re most likely looking to make a quick buck.</p></li>
<li><p><strong>Associated Threats</strong>: Not actual employees of an
organization but still familiar presences, e.g. delivery drivers,
cleaning crews, maintenance staff.</p></li>
<li><p><strong>Insider Threats</strong>: Current and former employees of
the actual business with knowledge of day-to-day operations go and what
the weaknesses may be.</p></li>
<li><p><strong>High-Capability Threats</strong>: The dark-side version
of a physical pentester, with all the tooling and expertise to match.
Probably the closest real-world analog to George Clooney.</p></li>
<li><p><strong>Nation-State Actors</strong>: Highly sophisticated and
well equipped members of an adversarial government looking to cause
damage to or steal information from critical systems and facilities (and
probably don’t need to use physical means to accomplish this very often,
if at all).</p></li>
</ol>
<p>If we factor in the statistics presented by <a
href="https://www.exabeam.com/blog/infosec-trends/insider-threats-what-your-business-needs-to-know-infographic/">Gartner
in 2024</a>, insider threats account for around 75% of security
breaches, even if just by accident. While exact numbers aren’t easy to
find, for the sake of discussion, let’s imagine that the graph is fairly
bell-shaped:</p>
<pre class="wide"><code>         │
         │                    75%
    % of │                    ┌──┐
breaches │                    │  │
  caused │                    │  │
         │                    │  │
         │  ?%       ?%       │  │     ?%       ?%
         │  ┌──┐     ┌──┐     │  │     ┌──┐     ┌──┐
         └──┴──┴─────┴──┴─────┴──┴─────┴──┴─────┴──┴─
           Petty   Assoc.   Insider  Hi-Cap   Nation</code></pre>
<p>Within the bounds of their <a
href="https://www.ibm.com/downloads/documents/us-en/131cf87b20b31c91">2024
report</a>, leaving out situations in which credentials were compromised
by phishing (A) or other means, insider error (B) was slightly more
common than insider malice (C), but only just over half as financially
damaging.</p>
<p>Physical security issues (D) sit on the low end of breach causes,
just above 9%.</p>
<figure>
<img src="https://ryanbasden.com/assets/blog/oceans-eleven-louvre-1.webp"
alt="A scatter plot of breach causes plotted by share of all breaches (horizontal axis) against average cost in USD millions (vertical axis), highlighting phishing (A), insider error (B), malicious insider (C), and physical theft or security issue (D)." />
<figcaption aria-hidden="true">A scatter plot of breach causes plotted
by share of all breaches (horizontal axis) against average cost in USD
millions (vertical axis), highlighting phishing (A), insider error (B),
malicious insider (C), and physical theft or security issue
(D).</figcaption>
</figure>
<p><em>As has been the case for a long time, most insider threat-caused
breaches (including phishing victims) are rarely due to someone acting
maliciously. However, they are certainly the most expensive.</em></p>
<p>Now, because the raw data is not available from IBM and they admit in
their report that their sampling methodology was selective:</p>
<blockquote>
<p>Our study drew upon a representative, nonstatistical sample of global
entities. Statistical inferences, margins of error and confidence
intervals can’t be applied to this data, given that our sampling methods
weren’t scientific.</p>
</blockquote>
<p>So, we have no idea if they incorporate physical breaches into
insider threats, or if all possible insider activity falls under
“physical theft or security issue”. Without the data, this could mean
anything from a stolen laptop with sensitive data on it (from a company
location or even just a parked car) to a badge being cloned
Mr. Robot-style.</p>
<p>In writing this, I haven’t been able to find a statistically sound
source of data on how many breaches started with an insider threat
specifically letting someone piggyback through a door (error) or
stealing data from their job (malice). But, for the sake of coming to
some kind of useful conclusion, we don’t need impact measurements to
discuss who could possibly break into a building.</p>
<p>To actually answer the question about <em>who on earth</em> we are
actually protecting against with recommendations from a physical
pentest, likelihood and impact aside, we should look at each of the five
threat profiles I listed above and understand how we can mesh them with
parts of the process.</p>
<p>Once again, we are trying to answer the question of who is
<em>actually doing anything like this</em>, not how much it <em>hurts
when they do.</em> That is a separate question for people with access to
good data.</p>
<p>Let’s establish phases of a physical intrusion and cross-reference
them with said threat profiles:</p>
<ol type="1">
<li><p><strong>Reconnaissance</strong>: Learning, either from a distance
or in person, what the physical security posture of a target building
consists of, a.k.a. “casing the joint”.</p></li>
<li><p><strong>Initial Access</strong>: Gaining unauthorized entry to a
facility intended to house and protect assets or information.</p></li>
<li><p><strong>Post-exploitation</strong>: Using the access gained to
steal assets or establish persistence mechanisms for future use,
e.g. malware on an unlocked workstation or a drop-device plugged into an
ethernet port.</p></li>
<li><p><strong>Profiteering</strong>: Making money off of the whole
thing by selling stolen assets/information or extorting the
organization. This is when the ethical hackers are writing
reports.</p></li>
</ol>
<h3 id="petty-thieves">Petty Thieves</h3>
<p>You’ve seen them on the news during periods of high tension and
unrest, barging into electronics stores and stealing whatever they can
easily sell on the secondhand market for easy money.</p>
<p>If they’re not taking advantage of localized chaos, they’re most
likely just going to smash the glass door you put a badge reader next
to. Their goal is to get in, get out, and get away, making as much money
as they can with as little associated risk as possible.</p>
<p>Your job is to make sure that anything valuable is a pain to get to.
Locked (and non-smashable) interior doors to things like storage rooms
and closets go a long way to deter someone who didn’t drop 100 dollars
on <a href="https://covertinstruments.com/">Covert Instruments</a> and
watch a bunch of YouTube videos on lock picking and door bypasses.</p>
<h3 id="associated-threats">Associated Threats</h3>
<p>These are regular people doing regular work in and around the
physical area you’re concerned about, but aren’t explicitly
employees.</p>
<p>Maybe they’re part of the maintenance team for the building you share
with four other businesses. Maybe they’re the package service driver
usually on the route you get deliveries from. Someone who is a familiar,
frequent face but might have access that wouldn’t just be afforded to
someone off the street.</p>
<p>While they most likely have too much going on to be concerned with
exfiltrating confidential data, they inherit a default level of trust
that can be abused by someone either in this category or someone wanting
to <em>look like</em> someone in this category. Clip boards and
toolboxes don’t cost very much at Home Depot.</p>
<h3 id="insider-threats">Insider Threats</h3>
<p>When discussing insider threats, it’s vital to understand that motive
is vital to the story. This is where we borrow a <a
href="https://modelthinkers.com/mental-model/hanlons-razor">razor from
Hanlon</a>:</p>
<blockquote>
<p>Never attribute to malice that which can be adequately explained by
neglect, ignorance or incompetence.</p>
<ul>
<li><em>modelthinkers.com</em></li>
</ul>
</blockquote>
<p>Ignorance of best practice does not place the insider under blame,
though neglect and malice absolutely should.</p>
<p>Neglect may look as benign as an overly courteous door holder, not
wanting to cause any interpersonal friction by closing a purposely
access controlled door behind them, despite someone jogging up behind
them, arms full of pizza boxes, making them scan their badge if they
have one with some degree of frustration.</p>
<p>Similarly, ignorance might be allowing a guest to sign the visitors’
log book and simply stepping into a privileged office space without
verifying who they are or who they are there to see. If no one
communicated this policy outside of, say, the front desk receptionist,
it is simply a case of not <em>knowing</em> best practice.</p>
<p>Finally, the rarer insider threat according to the IBM data from
before, is one acting with malice. A disgruntled employee (or
ex-employee) may leave a door unlocked, weakening the security perimeter
and hoping someone takes advantage of the gap.</p>
<p>More directly, they may know where sensitive or valuable information
is kept and can access it and sell it without anyone knowing.</p>
<h3 id="high-capability-threats">High-Capability Threats</h3>
<p>These are the people I’m not sure actually exist, and are the reason
I’m writing this particular post.</p>
<p>How many people out there are <em>high-capability threats</em> and
how many are <em>high-capability threat consultants</em> like myself?
Statistically speaking, there’s a non-zero chance they exist, and maybe
they’ve even been to the Louvre recently, but what is the likelihood
that a business will have to deal with such a person, and how much
should they spend on preparing to do so?</p>
<h3 id="nation-state-actors">Nation-State Actors</h3>
<p>While information on nation-state activity is difficult to find, I’m
fortunate enough to know some people who could point me in the right
direction without divulging information they’re sworn to protect.</p>
<p>According to the Federal Bureau of Investigation (FBI), <a
href="https://www.fbi.gov/news/stories/economic-espionage">economic
espionage</a> is notoriously difficult to prosecute. Without proof that
the defendant was acting as a foreign agent or on behalf of a foreign
government’s interests, the cases are usually prosecuted as trade secret
thefts.</p>
<p>Notable examples of actual economic espionage cases include not just
the theft of <a
href="https://archives.fbi.gov/archives/losangeles/press-releases/2010/la020810.htm">aerospace</a>
and <a
href="https://archives.fbi.gov/archives/newark/press-releases/2013/former-employee-of-new-jersey-defense-contractor-sentenced-to-70-months-in-prison-for-exporting-sensitive-military-technology-to-china">missile</a>
technology secrets, but <a
href="https://archives.fbi.gov/archives/boston/press-releases/2011/brookline-man-sentenced-to-for-foreign-economic-espionage">Akamai
customer lists and security system designs</a> as well as <a
href="https://www.justice.gov/usao-ndil/pr/computer-analyst-sentenced-three-years-prison-stealing-trade-secrets-citadel-and">source
code for trading software</a> that made the financial firm Citadel quite
a lot of money.</p>
<h2 id="in-the-coverage-lies-the-point">In the Coverage Lies the
Point</h2>
<p>Remembering the four stages of a physical intrusion from earlier in
this post, it’s time for some cross-referencing. How can we correlate
phases and components of a physical intrusion assessment to the five
threat profiles?</p>
<p>Much like network security, it helps to start from the inside and
work your way out. What do the people who <em>already have access</em>
(associated/insider threats) pose, and how can those risks be
mitigated?</p>
<p>Post-exploitation has the answers.</p>
<p>Moving outward, how could someone gain access if they do not have it
already (petty thieves and high-capability threats)?</p>
<p>Initial access tests will find out.</p>
<p>But what does that <em>actually mean?</em> Some of the more
eye-opening potential, I think, lies in the sort of finding each phase
can produce. Here are some examples of findings I have put in reports
for actual clients:</p>
<h3 id="recon">Recon</h3>
<ul>
<li><p>Security guards don’t follow a regular patrol schedule and often
take breaks in their cars.</p></li>
<li><p>Employees all use the same six-digit code on the side door
keypad.</p></li>
<li><p>People hold the door open for each other constantly.</p></li>
</ul>
<h3 id="initial-access">Initial Access</h3>
<ul>
<li><p>Badges are easily cloned as they are worn in plain sight and can
be easily read by a long-range badge reader in a shared space such as an
elevator.</p></li>
<li><p>The front door has a thumb lock that someone can turn from the
outside with a $20 <a
href="https://www.redteamtools.com/J-Tool-for-Thumb-Turn-Locks">j-tool</a>.</p></li>
<li><p>The back door is never locked because delivery drivers are coming
and going 24/7.</p></li>
</ul>
<h3 id="post-exploitation">Post-Exploitation</h3>
<ul>
<li><p>The CEO’s computer was left unlocked and could be infected with
malware.</p></li>
<li><p>Employee social security numbers were left in the HR managers
mailbox.</p></li>
<li><p>The wireless password was written on a conference room white
board.</p></li>
</ul>
<p>You may have noticed that I left out the final phase. Profiteering is
not a canonical part of a physical penetration test because, well, that
would just make the whole exercise just a crime. It is certainly part of
a real physical intrusion.</p>
<p>However, once malware is on a laptop, all of the risk associated with
the “Phishing” data point from IBM becomes yours, since there’s more
than one way to infect a computer. Ransomware and other kinds of
extortion hacking took the world by storm a mere 13 years ago beginning
with <a
href="https://en.wikipedia.org/wiki/CryptoLocker">CryptoLocker</a>.</p>
<p>Sounds like profiteering to me.</p>
<h2 id="in-summary">In Summary</h2>
<p>Ultimately, the most I or anyone else can do to effectively convey
the risks of a threat actor engaging in any kind of intrusion activity
is to tie real-world consequences to everyday ignorance or
negligence.</p>
<p>Until the impact has already been made, you might not see the value
of a physical security assessment until it’s too late.</p>
]]></content:encoded>
    </item>
    <item>
      <title>How Shadow Incentives Harm Real Security</title>
      <link>https://ryanbasden.com/blog/shadow-incentives/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/shadow-incentives.html</guid>
      <pubDate>Thu, 12 Feb 2026 00:00:00 +0000</pubDate>
      <description>The hidden incentive to make more money, not to reduce risk, that pushes the security industry toward compliance theater.</description>
      <content:encoded><![CDATA[<figure>
<img src="https://ryanbasden.com/assets/blog/shadow-incentives-1.webp"
alt="A still from the 1976 film Network: a lone figure stands at the far end of a long, dark boardroom table lined with green banker’s lamps, arms raised." />
<figcaption aria-hidden="true">A still from the 1976 film Network: a
lone figure stands at the far end of a long, dark boardroom table lined
with green banker’s lamps, arms raised.</figcaption>
</figure>
<p><em>“Arthur Jensen Pitches Economic Determinism’s New World Order to
Howard Beale” - <a
href="https://www.americanrhetoric.com/MovieSpeeches/moviespeechnetwork4.html">americanrhetoric.com</a></em></p>
<p>The security industry would not exist without bad actors.</p>
<p>Think about it for a moment. What is the point of a locked door if no
one wants to steal? Any security team, product, or service exists only
because there is someone out there looking to access systems that are
not theirs.</p>
<p>Buying clothes, storing important documents, and conducting business
with each other digitally are all lawful actions taken by regular people
to fulfill some goal. Using the language of <a
href="https://en.wikipedia.org/wiki/Game_theory">game theory</a>, we can
call this uninterrupted exchange of value
<strong>cooperation.</strong></p>
<p>Yet, we only have that word because of its opposite,
<strong>defection.</strong> Without defection, there would be no
cooperation. People would still do the sorts of things that we may
<em>consider</em> cooperation, but there would be no need to call it
anything other than simply living, working, trading, etc.</p>
<p>One cannot exist without the other. Cooperation cannot exist without
defectors.</p>
<p>Security cannot exist without hackers.</p>
<p>So why do organizations so rarely invest in products and services
like penetration tests in comparison to compliance initiatives?</p>
<p>And surely, if bad actors are the sole reason anyone spends money on
security at all, those that understand how attackers work and what they
do should have the most influence over improvement. And yet, penetration
testing is at best, even now, an annual requirement by many compliance
standards such as PCI DSS and ISO, and not even mentioned by some
others.</p>
<p>The variable businesses are solving for is not improvement or
resilience. It’s something bureaucratic and easy to digest, and it’s
harming real security.</p>
<h2 id="the-world-is-a-business-mr.-beale">The World is a Business,
Mr. Beale</h2>
<p>“Why do businesses pay for SOC 2 reports?”</p>
<p>I froze for a few seconds, each of which felt like its own century.
For my third day on the job at a company that, at the time, was
primarily selling SOC 2 reports, this should have been a slam dunk
answer for me. And I definitely thought it was.</p>
<p>“So they can stay compliant and prove they’re operating at a
standardized security baseline.”</p>
<p>“Wrong”, said the founder who would eventually become my CEO.</p>
<p><em>Panic.</em></p>
<p>I had no idea, then. I had no clue why our customers bought our
primary service which generated the majority of our revenue. Luckily, I
was just incredibly naive, and was about to learn a valuable lesson that
I would take with me forever.</p>
<p>“People buy SOC 2 reports so they can <em>make more money</em>,” he
continued.</p>
<p>He then described what our compliance services were really about: a
pipework of business-to-business relationships built on externally
verifiable assurances and contingencies that, as far as I could tell,
just kept any one organization’s skin from being the furthest into the
game.</p>
<p>No, the goal was not to be more secure and improve over time. It was
not to prevent breaches, it was not to better protect customer data, and
it was not to mitigate business risk. Those were all afterthoughts.</p>
<p>The goal was to make more money.</p>
<p>If you’ve seen <em><a
href="https://en.wikipedia.org/wiki/Network_(1976_film)">Network
(1976)</a></em>, this would have been when <a
href="https://www.youtube.com/watch?v=35DSdw7dHjs">I saw the face of
God</a> if not for my near bulletproof idealism and naiveté, an
inescapable brain cage native to my mid-20s.</p>
<p>Instead of in a shotgun blast revelation, ballistically delivered
down the length of a solid wood conference table, the existence of
<em>shadow incentives</em> in the security industry would slowly and
painfully unravel itself across the landscape of my innocent mind over
the next few years.</p>
<p>What I would eventually learn is that there is a race being run in
security, but the finish line is not resilience or continuous
improvement. It’s something contradictory, an antithetical box to be
checked that is benefitting few and harming many.</p>
<p>Let’s take a step back and try to understand how, in security of all
things, we’ve strayed so far from actually staying secure.</p>
<h2 id="where-do-penetration-tests-come-from">Where Do Penetration Tests
Come From?</h2>
<p>My fellow penetration testers and security researchers hate to think
about what, to me, is a crucial part of the “buy security services”
equation: <em>most clients are only getting a penetration test or other
vulnerability assessment of some nature because they have to.</em></p>
<p>When I ran the penetration testing practice at a previous employer,
over 90% of our projects (and a similar percentage of our revenue) were
what we called “compliance driven”, meaning that if we were performing a
penetration test of an environment, it was because that environment was
part of a compliance initiative scope.</p>
<p>If it involved a network, there was a good chance it was part of a
PCI DSS card data segmentation effort. If it was purely external IPs and
web applications, ISO 27001 was likely involved. The flow at my old
company was simple:</p>
<ol type="1">
<li><p>A company wants to make money (e.g., via payment
processing).</p></li>
<li><p>The company seeks out an external verifier (a PCI DSS
auditor).</p></li>
<li><p>The auditor informs them that PCI DSS requirements mandate
penetration testing of the scoped environment.</p></li>
<li><p>The company buys penetration testing services from the same firm
as their audit services.</p></li>
<li><p>I get paid to attack a card data environment.</p></li>
</ol>
<p>In this exchange, PCI DSS compliance via certification is the obvious
answer to the dilemma of wanting to process card payments. For the
purposes of my next point, it is <em>one degree</em> removed from the
problem (a.k.a. “the solution”).</p>
<p>Penetration testing, being a requirement of PCI DSS, is <em>two
degrees</em> removed from the problem. This second degree is emphasized
by the fact that the skills required to audit a company for PCI DSS
compliance and those required to perform penetration testing against a
card data environment rarely overlap.</p>
<p>As with many things, the further a measure is from the problem it
supports in solving, the more susceptible it is to “enshittification”,
which is just a hot new phrase for a subset of the actions and
consequences of a “race to the bottom”.</p>
<h2 id="the-illusion-of-quality-based-competition">The Illusion of
Quality-based Competition</h2>
<blockquote>
<p><strong>Race to the bottom</strong> is a <a
href="https://en.wikipedia.org/wiki/Socioeconomics">socio-economic</a>
concept describing a scenario in which individuals or companies compete
in a manner that incrementally reduces the utility of a product or
service in response to <a
href="https://en.wikipedia.org/wiki/Perverse_incentive">perverse
incentives</a>. This phenomenon is in contrast with traditional <a
href="https://en.wikipedia.org/wiki/Competition_(economics)">competition</a>,
which tends to improve goods and services.</p>
<ul>
<li><a
href="https://en.wikipedia.org/wiki/Race_to_the_bottom#:~:text=Race%20to%20the%20bottom%20is,to%20improve%20goods%20and%20services">Wikipedia</a></li>
</ul>
</blockquote>
<p>Since penetration testing was (and still is, increasingly so) a rider
requirement for many major compliance frameworks, I came to terms with
certifications and attestations being a necessary part of the ecosystem,
at least as it pertained to my revenue targets.</p>
<p>What I did not expect was how much we would need to compete with cost
leaders, and how being a cost leader would invariably mean not being a
leader of much else, namely work quality.</p>
<p>But to an auditor, a pentest report is a pentest report, and how much
it cost the audited company is of no concern.</p>
<p>Outside of PCI DSS, organizations are often only required to provide
evidence that a penetration test <em>happened</em>, either in the form
of a heavily redacted/abbreviated report or a simple letter of
attestation from the firm that did it.</p>
<p>When compliance depends on <em>admittance</em>, and admittance only
depends on <em>occurrence</em>, and occurrence doesn’t depend on
<em>cost</em>, the race to the bottom begins.</p>
<p>The areas over which many pentesting teams compete are no longer the
coherence and robustness of the deliverable, the rigor and depth of the
methodology, nor the relevance of the findings. Instead, they compete
over cost and delivery time.</p>
<p>And when lower costs and faster delivery are the winning traits,
everything else naturally suffers.</p>
<h2 id="what-to-look-for-if-you-care">What To Look for (if You
Care)</h2>
<p>Everyone has to make a choice when paying for security work: quick
and cheap, cheap and good, or good and quick.</p>
<p>At this point, it should be obvious that cheapness is a reliable
indicator of lowered quality, though the inverse is not as reliable. An
expensive service is not reliably a <em>good</em> service.</p>
<p>Cost is a metric on which different providers can easily compete, but
why lower your prices until you’re forced to, either to match a
competitor’s pitch to a prospect or to simply pull in more leads from
the start?</p>
<p>Even more dastardly is the <em>inflationary</em> cost competition
strategy by which a provider constantly markets themselves as “bleeding
edge” or “constantly innovating” in order to make their pentesting
methods to be the most relevant, while not adding anything of real
substance at all.</p>
<p>The best example of this is when, before LLMs were as impressive as
they are now (a meager five-ish years ago), and the marketing term was
“machine learning”, vendor after vendor was shoving “AI” into their
firewalls, IDS, and EDR, just hoping you wouldn’t ask them what that
actually meant.</p>
<p>An expensive service doesn’t guarantee a high quality product, but
very rarely is a high quality service <em>not</em> expensive.</p>
<p>Apart from playing the cost guessing game, to know you’re looking at
a higher quote with guarantees behind it, check for any of the
following:</p>
<ol type="1">
<li><p><strong>Expertise on Display</strong></p>
<p>Blog posts are ubiquitous. Quality writing is not.</p>
<p>Look for where your prospective vendor actually talks about what they
do and why. Do they discuss their methodologies and why they do things?
More interestingly, are there things they’ve opted not to do?</p></li>
<li><p><strong>Sample Deliverables</strong> Get an example report. If a
vendor can’t give you one of these, they’re either not proud of their
results or are not committed to standing out.</p>
<p>Good reports aren’t some kind of proprietary knowledge or insider
information. Competitive advantages though they may be, they’re also the
the table stakes and shouldn’t be some secret they keep close to the
chest.</p></li>
<li><p><strong>Recognizable Customer Testimonials</strong></p>
<p>It has never been easier to generate fake testimonials. LLMs are very
good at this, so verify the people and their respective companies are
real. Customers actually willing to vouch for a vendor is a strong
indication that the service is good.</p></li>
</ol>
<p>The bottom line is that, if you’re looking for a pentest report that
is going to fulfill a compliance requirement without any scrutiny, just
about anyone will do.</p>
<p>If you’re looking for security professionals that can make positive
change and help improvements stick, you might need to look toward the
top of the barrel.</p>
]]></content:encoded>
    </item>
    <item>
      <title>You Will Definitely Get Phished, So Stop Simulating It</title>
      <link>https://ryanbasden.com/blog/you-will-get-phished/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/you-will-get-phished.html</guid>
      <pubDate>Fri, 16 Jan 2026 00:00:00 +0000</pubDate>
      <description>Why phishing simulations punish employees for a problem they can't solve, and what actually reduces the risk of a successful phish.</description>
      <content:encoded><![CDATA[<figure>
<img src="https://ryanbasden.com/assets/blog/you-will-get-phished-1.webp"
alt="A distressed office worker holds their forehead at a desk while a person in a suit points an accusing finger at them." />
<figcaption aria-hidden="true">A distressed office worker holds their
forehead at a desk while a person in a suit points an accusing finger at
them.</figcaption>
</figure>
<p><em>“How dare you fall for this exceptionally well crafted phishing
template we explicitly whitelisted in the mail filters so it appeared to
be legitimate?”</em></p>
<p>Phishing simulations are extremely popular in the business world.</p>
<p>Organizations these days are so worried about ransomware that they’re
diving in head first, sending their employees fake gift card offers and
asking them for their passwords, then sending the ones who fail the
tests to training over and over again.</p>
<p>And I can’t <em>totally</em> blame them.</p>
<p>Ransomware has singlehandedly bankrupted a number of organizations
and the gangs perpetuating the breaches are only getting better at their
jobs.</p>
<p>The demand for some kind of solution is huge.</p>
<p>Kevin Mitnick started a whole business around delivering phishing
simulations and subsequent training, though they’ve been criticized
recently for requiring explicit approval through spam filters and other
detection mechanisms.</p>
<p>Smaller companies are making plenty of money on education platforms
with recycled content about how to <em>spot</em> a phishing email, how
to report a phishing email, but they’re not doing any measurement.</p>
<h2 id="but-is-it-working-is-it-useful">But is it working? Is it
useful?</h2>
<p>It’s hard to say.</p>
<p>I’ve seen <strong>a lot</strong> of phishing attempts in my 10 years
in this industry. From detecting and stopping campaigns in SOC/sysadmin
roles to running many myself (internally or for clients as a pentester
and red teamer), nothing really surprises me anymore.</p>
<p>Except, of course, the myriad of misconceptions around phishing and
the growing list of blind spots organizations have about what happens
next.</p>
<p>Many companies do next to nothing to patch vulnerabilities, secure
endpoints, or segment networks - all things that make it more difficult
for a successful phish to matter.</p>
<p>They’re one good phish (or Exchange zero-day) away from the very
thing they’re spending so much money to prevent.</p>
<p>Why?</p>
<p>Because they’re placing the responsibility for preventing breaches on
the wrong people: the users who can’t do anything about it.</p>
<p>To provide an alternative perspective, and maybe get us on the right
track, here’s what I’ve learned about phishing attacks and how to
approach them differently:</p>
<h3 id="no-one-is-immune."><strong>No one is immune.</strong></h3>
<p>If you think you’re not the kind of person to fall for a phishing
link, you’re dead wrong.</p>
<p>I’ve seen even the most security-minded individuals fall for a link
that was well placed and convincing.</p>
<p>It’s not all their fault, either. There is a direct correlation
between the time and effort put into the campaign and the success rate,
and we work pretty hard.</p>
<p>Twenty minutes of research on what someone’s interests are will give
me more than enough context to include in a personalized phishing
attempt to anger, worry, or offend them into falling for my red team’s
tricks.</p>
<h3 id="training-only-works-so-well.">Training only works so well.</h3>
<p>A phish that works on someone is likely to just be better than the
fodder from your curriculum. Keep training on gift card offers and
people will fall for them less, but they’ll still fall for me
impersonating the IT helpdesk or HR.</p>
<p>Did you train them not to click an “Unsubscribe” link in an annoying
newsletter?</p>
<p>Of course you didn’t because that would be silly. And I’ll keep
putting my credential-stealing links there.</p>
<h3 id="click-rate-only-matters-in-context.">Click rate only matters in
context.</h3>
<p>What <em>actually</em> matters is what happens after.</p>
<p>If everyone clicks but no one enters credentials, maybe they
recognized the page as malicious. This should be celebrated, not
punished. Look at why the email landed in people’s inboxes before you
blame them.</p>
<p>Sure, older software is more prone to web-based payload delivery.</p>
<p>Browser 0-days exist.</p>
<p>But those are unique threat model elements that should be uniquely
considered, not universally used as flimsy justification for a
click-based metric.</p>
<p>Neither are usually a user’s fault anyway.</p>
<h3 id="mfa-is-just-another-flag-to-capture.">MFA is just another flag
to capture.</h3>
<p>Speaking of contextualizing clicks, if someone is willing to enter
their credentials, they’re probably going to enter their MFA code.</p>
<p>I can steal all of it if I want to. Either buy everyone hardware
tokens or stop leaning on MFA as a cure-all.</p>
<h2 id="so-are-phishing-tests-worth-it">So are phishing tests worth
it?</h2>
<p>Should you let a vendor through your protections just to gather
metrics?</p>
<p>Does the training work?</p>
<p>I don’t have data to sway you either way, just my experiences on the
blue side and the red side.</p>
<p>A great piece of research was recently published by some smart people
at the Department of Computer Science at ETH Zurich, Switzerland that
<em>does</em> provide data, and you can find it <a
href="https://arxiv.org/abs/2112.07498">right here</a>.</p>
<p>Here are some things that I know <em>will</em> help:</p>
<h3 id="reward-people-for-reporting-malicious-emails.">Reward people for
reporting malicious emails.</h3>
<p>In a previous job, I wrote a monthly “Spam Hall of Shame” newsletter
that lampooned user-submitted phishing attempts while breaking them down
and teaching people about their various elements.</p>
<p>Want to know what happened?</p>
<ul>
<li><p>Click rates plummeted.</p></li>
<li><p>Reports skyrocketed.</p></li>
<li><p>People had water cooler conversations about how they recognized
this or that phish.</p></li>
</ul>
<p>Suddenly it was much less of a problem and our risk was lowered by
creating cultural momentum.</p>
<h3 id="keep-stuff-out-of-inboxes.">Keep stuff out of inboxes.</h3>
<p>Seriously, just reduce the number of bypass events as much as you
can.</p>
<p>This is your first layer of defense. If you want to test it, <em>and
you should</em>, champion someone to build the skill set to do so. Or
hire for it.</p>
<p>But test it.</p>
<h3 id="test-for-post-delivery-impact.">Test for post-delivery
impact.</h3>
<p>What can actually happen after just a link click? Nothing?</p>
<p>What about credential theft, MFA or otherwise? What about host
compromise?</p>
<p>This is the stuff that actually matters in a real attack, which is
the situation you’re trying to avoid, is it not? Penalizing a user for
falling for a phishing attempt while not protecting them on either side
of the attack is deflection, not improvement.</p>
<p>Castles have walls to protect people. If it was possible to stop an
invading army by publicly shaming citizens, no one would need walls, but
that’s not how it works. Educate people to understand the “why” behind
more security-oriented thinking.</p>
<p>Turn your users into heroes who have a part to play in the
organization’s security, not liabilities that weaken it by just
existing.</p>
<h2 id="final-thoughts">Final Thoughts</h2>
<p>SpecterOps, a firm I highly respect, recently posted <a
href="https://posts.specterops.io/revisiting-phishing-simulations-94d9cd460934">this
article on how they’re changing the way they do phishing engagements</a>
from here on out.</p>
<p>It is, in a few words, highly valuable perspective.</p>
<p>Especially because we’ve been dealing with this same quandary
internally: we know we can phish well enough to get clicks, but is it
actually helping?</p>
<p>Sometimes it seems like it, but most of the time we’re just telling
everyone what they already know, which is that all humans are
suggestible. Everyone can fall for social engineering that has enough
time and effort behind it.</p>
<p>As cool as it is to spend a ton of time on initial access attempts
for that “I’m in” moment, at some point it might just not be in the
cards, so as pentesters and red teams, we have to provide value
somehow.</p>
<p>The “automatically move to assumed breach after X amount of
time/effort” model is superior in this regard. We can’t waste time
either proving the inevitable and then calling it a day like a breach
just isn’t possible.</p>
<p>They’ve communicated this better than anyone else, including me, and
I think they deserve the last word based on how well they articulated
the current state of phishing exercises.</p>
<p>If you can take one thing away from it, it should be this:</p>
<p>People are not entry points you can close, patch, or update. They are
a component of the greater security boundary around which you should be
placing mitigations like better email security, payload detection, and
more.</p>
<p>In other words, measure what you can do about a successful phish
before and after a human being acts like a human being.</p>
<p>Penalizing a user for falling for a phishing attack while not
protecting them on either side of it is blame deflection, not security
improvement.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Lessons in Project Management</title>
      <link>https://ryanbasden.com/blog/management-lessons/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/management-lessons.html</guid>
      <pubDate>Wed, 31 Dec 2025 00:00:00 +0000</pubDate>
      <description>A largely unfiltered and slightly refined response to upper management's annoying idealisms.</description>
      <content:encoded><![CDATA[<blockquote>
<p>A while back, a red team friend asked in a group chat how to handle
management pushing agile on their offensive security team. My answer got
really long really quickly.</p>
<p>Since red team management and practice leadership is my bread and
butter, I have a lot of experience with fielding the sort of misguided
idealism about KPIs and “stories” that comes from disconnected
executives who mistake familiarity for wisdom, assuming that because one
thing works somewhere, it must work everywhere.</p>
<p>What follows is a refined reproduction of my reply.</p>
</blockquote>
<h2 id="quit-depending-on-the-tooling.">Quit depending on the
tooling.</h2>
<p>The first thing every project manager has to understand is that your
app/platform/tool/whatever isn’t what <em>gets</em> the work done.</p>
<p>It isn’t the reason work doesn’t get done, deadlines get missed, or
anyone misunderstood the requirements.</p>
<p>So changing the tooling every six months isn’t going to do anything
except keep upper management off your ass because they usually don’t
know better and annoy your team with more meaningless changes.</p>
<h2 id="no-end-state-no-solution.">No end state, no solution.</h2>
<p>It is the job of the project manager to define this and test whether
it’s feasible with the people who will be executing the work.</p>
<p>Most of the time, especially in security consulting, the <em>end
result</em> is outlined in a contract as a report or deliverable of some
kind. For freeform projects like research efforts or tool development,
replace the <em>end result</em> with an <em>end state</em>.</p>
<p>To do this well, you have to ask the right questions. What is the
actual problem? How are we currently working and how do we <em>want</em>
to be? Where are the bottlenecks?</p>
<p>Here are a few real-world examples from my career and the solutions
my team came up with all on their own that were better than anything I
could have come up with myself:</p>
<hr />
<p><strong>END STATE:</strong> We need a way to quickly and painlessly
deploy access to client environments from which to conduct pentests.</p>
<p><strong>SOLUTION:</strong> Vagrant VM templates that could be
automatically uploaded to S3 for downloading by the client and, on boot,
connected up to a Tailscale server and provided us remote access without
the client having to punch holes in their firewall.</p>
<hr />
<p><strong>END STATE:</strong> <code>$projectmanagementtool</code>
doesn’t support natural language due date setting, which is crucial to
our project structures, so we need a way to deploy projects that saves
us from manually selecting a bunch of dates from shitty dropdown
menus.</p>
<p><strong>SOLUTION:</strong> A custom Python script that builds
projects entirely through $projectmanagementtool’s API.</p>
<hr />
<p><strong>END STATE:</strong> Our standard operating procedures for
pentests (i.e., the bare minimum actions to take against a target)
aren’t getting updated and therefore aren’t getting used.</p>
<p><strong>SOLUTION:</strong> Make the SOP checklists the backbone for
connected wiki articles so that new articles about vulnerabilities or
exploit methods can’t be added without creating a reference in the SOP
first.</p>
<hr />
<p>If you can’t come up with a desired <em>end state</em>, your
limitations become their constraints.</p>
<p><em>Bonus thought exercise: How many of the problems above have you
seen “fixed” with a new product or piece of software?</em></p>
<h2 id="make-your-templates-freeing-not-restrictive.">Make your
templates freeing, not restrictive.</h2>
<p>The most common types of projects your team works on should be
templated and purely logistical.</p>
<p>Start date, end date, status update cadence, and that’s it.
Everything else should be filled in by the practitioner. How they
research, what they try, how they try it, etc. is all up to them. In a
project management tool, that looks like this:</p>
<ul>
<li>Fieldwork Start + date</li>
<li>Client Status Call + date</li>
<li>Fieldwork End + date</li>
<li>Report Draft to QA + date</li>
<li>Report Draft Delivered + date</li>
</ul>
<p>Quality isn’t a field in the template. It shows up in the work, or it
doesn’t, and the status call is where that becomes <em>everyone’s</em>
problem. This works really well for things like 5-day web app pentests
that sales sends your way.</p>
<p>The less common, less rigid, and more freeform projects can still be
templated as long as the template is purely logistical. Track what
matters for the sake of billing milestones and contract terms. Leave the
rest up to the experts doing the work.</p>
<p>A good attacker doesn’t need a script — they need a target and a
scope. The rest is tradecraft. Give them enough constraints to ensure
the delivery is to spec without suffocating them.</p>
<h2 id="pick-a-tool.-any-tool.-stick-to-it.">Pick a tool. Any tool.
Stick to it.</h2>
<p>Calendar events with notes, a project management tool, dedicated
Slack threads, whatever. Just make sure everyone can go to the same
place and see what the expectations are. Project management tools are
references, not crutches. If you think a project management tool is
going to make work easier, you’re delusional and avoiding the real
problems.</p>
<h2 id="project-managers-should-leave-doers-alone.">Project managers
should leave doers alone.</h2>
<p>If you’re going to check in, build the check-in into the template
upfront so it’s expected. Otherwise you’re just going to annoy
everyone.</p>
<p>The person executing the work, or leading the project if there’s a
team, is most likely going to come up with a better route or product
than you could’ve come up with on your own.</p>
<p>Practitioners, especially hackers, tend to thrive with autonomy and
room to experiment. Ask me how I know.</p>
<h2 id="learn-to-tell-management-to-back-off-politely.">Learn to tell
management to back off, politely.</h2>
<p>Get desired end states from them, not dumb shit like “number of
projects completed” or “number of tools integrated into methodology”.
Ask them what they want to be able to say was accomplished.</p>
<p>What tangible improvements are they looking for? What gaps in the
current product offering/security posture/etc. do they see that they
want rectified? What are their true concerns?</p>
<p>This will help you cut through all the bullshit they heard on some
podcast or from the board about “agile” and “story points” and get to
the root of the problem, which is why the work needs to be done. Do not
let them turn you against our boy <a
href="https://web.archive.org/save/https://quickonomics.com/terms/goodharts-law/">Goodhart</a>
by making good measures into targets and, therefore, into bad
measures.</p>
<h2
id="fix-the-communication-problem-fix-the-project-management-problem.">Fix
the communication problem, fix the project management problem.</h2>
<p>People treat project management as some kind of equation to solve
when it’s really just about communication.</p>
<p>The trouble is that communicating effectively is hard and requires
more time spent on actually knowing, training, and trusting people than
most companies have the time or energy for.</p>
<p>The irony is that it produces better outcomes than the alternative,
just not the kind that light up a quarterly report.</p>
<p>Over time, taking this approach will make your team happier, give
them more time to do what they’re actually good at, and outperform any
version of this story where management got exactly what they asked
for.</p>
<p>But be ready for upper management to see that and ask you to do 5-10%
better year-over-year, killing the soul of your team for the
shareholders.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Less Pager For Persistence</title>
      <link>https://ryanbasden.com/blog/less-is-more/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/less-is-more.html</guid>
      <pubDate>Tue, 16 Sep 2025 00:00:00 +0000</pubDate>
      <description>New research for using `less` as a persistence mechanism.</description>
      <content:encoded><![CDATA[<p>The skill floor for Linux server administration is pretty low in my
experience, which makes it one of my favorite places to land in a red
team engagement. I can find all kinds of weird, convoluted ways to stay
on the machine long after you’ve stopped looking.</p>
<p>My friend Jordan Mussman found a novel way of abusing regular
functionality in the <code>less</code> binary to maintain persistence as
a regular user OR root. Go read <a
href="https://osdfir.blogspot.com/2025/09/less-is-more.html">his
research</a>, and maybe give your environment variables a look while
you’re at it.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Stop Breaking Your Feeds</title>
      <link>https://ryanbasden.com/blog/stop-breaking-feeds/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/stop-breaking-feeds.html</guid>
      <pubDate>Fri, 18 Jul 2025 00:00:00 +0000</pubDate>
      <description>RSS is supposed to be for the readers, not you.</description>
      <content:encoded><![CDATA[<p>Please stop updating your sites and breaking your RSS feeds.</p>
<p>By breaking, I mean any of the following:</p>
<ol type="1">
<li>Truncating the XML entries to only be the first chunk of the body
content.</li>
<li>Only publishing the title and summary of the body content.</li>
<li>Killing the feed altogether (likely because you didn’t know you had
one).</li>
</ol>
<p>If you set up your site yourself with a static generator like Hugo or
something more comprehensively painful like Wordpress, you may not even
know that your site has an RSS feed built in by default.<a href="#fn1"
class="footnote-ref" id="fnref1" role="doc-noteref"><sup>1</sup></a>
Anyone can point a piece of software known as a feed reader at the URL
your RSS feed lives at and read what you write wthout having to visit
your site to check for new content.</p>
<p>This is because the reader routinely checks the feed URL for new
posts in the form of XML entries that <em>should</em> contain the title
of the post and the full content.</p>
<p>Plaintext is not that heavy, and it is certainly not as heavy as all
the third-party plugins and JavaScript abominations behind your
frontend.<a href="#fn2" class="footnote-ref" id="fnref2"
role="doc-noteref"><sup>2</sup></a></p>
<p>For the sake of the open web - and especially for the sake of not
hating your audience - stop breaking your feeds.</p>
<section id="footnotes" class="footnotes footnotes-end-of-document"
role="doc-endnotes">
<hr />
<ol>
<li id="fn1"><p>Hugo exposes it at <code>/index.xml</code> by default.
WordPress has had a feed at <code>/feed/</code> since version 1.0.
Jekyll outputs to <code>/feed.xml</code>. Most generators follow the
same pattern.<a href="#fnref1" class="footnote-back"
role="doc-backlink">↩︎</a></p></li>
<li id="fn2"><p>The average webpage today is several megabytes of
JavaScript. A full-text RSS entry for even a long post is measured in
kilobytes.<a href="#fnref2" class="footnote-back"
role="doc-backlink">↩︎</a></p></li>
</ol>
</section>
]]></content:encoded>
    </item>
    <item>
      <title>C2 via Legitimate Services</title>
      <link>https://ryanbasden.com/blog/lolc2/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/lolc2.html</guid>
      <pubDate>Tue, 25 Feb 2025 00:00:00 +0000</pubDate>
      <description>A collection of legitimate services and how to use them for evil.</description>
      <content:encoded><![CDATA[<p><a href="https://lolc2.github.io/">LOLC2</a> is a collection of
legitimate services and how to use for command-and-control. The
detection sections for Microsoft services are especially interesting
(funny) to look at:</p>
<pre><code># Microsoft Sharepoint
    
## C2 Projects:
  https://github.com/looCiprian/GC2-sheet
  https://github.com/RedSiege/GraphStrike
    
## Detection:
  url: https://graph.microsoft.com/v1.0/sites/*/lists/*/items/
  url: https://graph.microsoft.com/v1.0/sites/*/lists/*</code></pre>
]]></content:encoded>
    </item>
    <item>
      <title>Link Blogs</title>
      <link>https://ryanbasden.com/blog/link-blogs/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/link-blogs.html</guid>
      <pubDate>Fri, 21 Feb 2025 00:00:00 +0000</pubDate>
      <description>A nice way to share without writing an essay.</description>
      <content:encoded><![CDATA[<p>I recently came across the idea of a <a
href="https://xuanwo.io/links/2025/01/link-blog/">link blog</a> and
loved it immediately.</p>
<p>One of the biggest barriers to me writing anything at all is usually
feeling like I need to say something long and profound, when in reality
I more often have short commentary to make on what I’ve read (which I do
a lot):</p>
<blockquote>
<p>I decided to follow simon’s approach to creating a link blog, where I
can share interesting links I find on the internet along with my own
comments and thoughts about them.</p>
</blockquote>
<p>I am deciding to follow Xuanwo’s approach to Simon’s approach for
some of the early content here so I can fill it up without the pressure
of changing the world with an essay.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Recommended Blogs</title>
      <link>https://ryanbasden.com/blog/blogroll/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/blogroll.html</guid>
      <pubDate>Mon, 20 Jan 2025 00:00:00 +0000</pubDate>
      <description>A collection of blogs/feeds I read on a regular basis.</description>
      <content:encoded><![CDATA[<h2 id="developmentengineering">Development/Engineering</h2>
<ul>
<li><a
href="https://codemadness.org/atom_content.xml">Codemadness</a></li>
<li><a href="https://computer.rip/rss.xml">computers are bad</a></li>
<li><a href="https://jvns.ca/atom.xml">Julia Evans</a></li>
<li><a href="https://ludic.mataroa.blog/rss/">Ludicity</a></li>
<li><a href="https://nyxt.atlas.engineer/feed">Nyxt Browser</a></li>
<li><a href="https://buttondown.email/ownyourweb/rss">Own Your
Web</a></li>
<li><a href="https://mntre.com/reform_md.atom">Reform</a></li>
<li><a
href="https://secluded.site/posts/index.xml">Secluded.Site</a></li>
<li>(videos) <a
href="https://www.youtube.com/feeds/videos.xml?channel_id=UCEEVcDuBRDiwxfXAgQjLGug">Dreams
of Autonomy</a></li>
<li>(videos) <a
href="https://www.youtube.com/feeds/videos.xml?channel_id=UCWQaM7SpSECp9FELz-cHzuQ">Dreams
of Code</a></li>
<li>(videos) <a
href="https://www.youtube.com/feeds/videos.xml?channel_id=UCsBjURrPoezykLs9EqgamOA">Fireship</a></li>
<li>(videos) <a
href="https://www.youtube.com/feeds/videos.xml?channel_id=UC_zBdZ0_H_jn41FDRG7q4Tw">Vimjoyer</a></li>
<li>(summary only) <a href="https://dataswamp.org/~lich/rss.xml">out
there in space</a></li>
<li>(summary only) <a
href="https://dataswamp.org/~solene/rss.xml">Solene</a></li>
<li>(summary only) <a
href="https://fasterthanli.me/index.xml">fasterthanli.me</a></li>
</ul>
<h2 id="hacking">Hacking</h2>
<ul>
<li><a href="https://0xrick.github.io/feed">0xRick’s Blog</a></li>
<li><a href="https://aff-wg.org/feed/">Adversary Fan Fiction Writers
Guild</a></li>
<li><a href="https://blog.isosceles.com/rss/">Isosceles Blog</a></li>
<li><a href="https://posts.specterops.io/feed">SpecterOps Blog</a></li>
<li><a href="https://threat.tevora.com/feed/">Tevora</a></li>
<li><a href="https://trustedsec.com/feed.rss">TrustedSec</a></li>
<li><a href="https://dirkjanm.io/feed.xml">dirkjan</a></li>
<li><a href="https://hausec.com/feed/">hausec</a></li>
<li><a href="https://malicious.link/posts/index.xml">mubix</a></li>
<li>(videos) <a
href="https://www.youtube.com/feeds/videos.xml?channel_id=UCPeJcqbi8v46Adk59plaaXg">webpwnized</a></li>
<li>(videos) <a
href="https://www.youtube.com/feeds/videos.xml?channel_id=UCa6eh7gCkpPo5XXUDfygQQA">IppSec</a></li>
<li>(summary only) <a href="https://0ut3r.space/atom.xml">0ut3r
Space</a></li>
<li>(summary only) <a
href="https://www.blackhillsinfosec.com/feed/">Black Hills Information
Security</a></li>
<li>(summary only) <a href="https://grahamhelton.com/rss.xml">Graham
Helton</a></li>
<li>(summary only) <a href="https://jericho.blog/feed/">Rants of a
deranged squirrel.</a></li>
<li>(title only) <a href="https://chomp.ie/rss.xml">chompie at the
bits</a></li>
<li>(broken) <a href="https://www.hackingarticles.in/feed/">Hacking
Articles</a></li>
<li>(broken) <a href="https://makemyday.io/index.xml">Make My Day
[IO]</a>)</li>
<li>(broken) <a
href="https://exploit.ph/feeds/all.rss.xml">eXploit</a></li>
</ul>
<h2 id="security-and-privacy">Security and Privacy</h2>
<ul>
<li><a href="https://blog.badsectorlabs.com/feeds/all.atom.xml">Bad
Sector Labs Blog</a></li>
<li><a href="https://blogs.coreboot.org/feed/">coreboot</a></li>
<li><a href="https://blog.archive.org/feed/">Internet Archive
Blogs</a></li>
<li><a href="https://libreboot.org/feed.xml">News for
libreboot.org</a></li>
<li><a href="https://www.schneier.com/feed/atom/">Schneier on
Security</a></li>
<li><a href="https://blog.scrt.ch/feed/">Sec Team Blog</a></li>
<li><a href="https://blog.yaelwrites.com/rss/">String Literal</a></li>
<li><a href="https://blog.thenewoil.org/feed/">The New Oil</a></li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Burnout Recovery and Prevention 101 (Part 0)</title>
      <link>https://ryanbasden.com/blog/burnout-prevention-part-0/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/burnout-prevention-part-0.html</guid>
      <pubDate>Sun, 13 Aug 2023 00:00:00 +0000</pubDate>
      <description>An introduction to burnout and how to recover from it.</description>
      <content:encoded><![CDATA[<blockquote>
<p>This is the written version of a talk I gave at BSides Atlanta 2022
called “These Violent Delights”. Since it wasn’t recorded, I thought I
would make it more available to people by blogging it. You can see the
slides on Github <a
href="https://github.com/rybaz/talks/blob/master/burnout_recovery_and_prevention_bsidesatl2022.pdf">here</a>.</p>
</blockquote>
<p>It’s been about two years since I wrote all of this for the first
time.</p>
<p>The reception of the talk version at BSides Atlanta last year was
good enough that I figured publishing these ideas and lessons for
everyone to access would be beneficial.</p>
<p>But in trying to make it all perfect and complete, I’ve
procrastinated publishing anything at all.</p>
<p>So, to remedy this, I’m going to publish in parts.</p>
<p>This is Part 0. Based on my massive list (mess) of talking points,
here’s what’s coming up:</p>
<ul>
<li>Part 1: Where To Start</li>
<li>Part 2: Improving Your Personal Health</li>
<li>Part 3: Setting Professional Boundaries</li>
<li>Part 4: Smash In Case Of Emergency</li>
</ul>
<h2 id="recovery-first-prevention-after">Recovery First, Prevention
After</h2>
<p>I will talk about burnout and how to prevent it, but more
importantly, I want to talk about recovery.</p>
<p>Why?</p>
<p>Because most people have already experienced burnout, and I suspect a
lot are still in it. I have to suspect because, though I have tried, I
cannot find any data on how many people have recovered.</p>
<p>There are plenty of data sources for how many people have been or are
currently burnt out, and prevention only matters if you’re not burnt out
already.</p>
<h2 id="why-even-talk-about-this">Why even talk about this?</h2>
<p>Because the working world has a burnout problem, and to make matters
worse. Infosec as an industry also has a talent problem.</p>
<p>According to plenty of sources, there were 2.72 million job openings
in 2021. That number is going down, but it’s not one to laugh at.</p>
<p>Meanwhile, 75% of employees said they’ve experienced burnout, and 56%
of employers admitted to have retention issues, 36% of those surveyed by
Eagle Consulting said their organization isn’t doing anything to help
them NOT be burnt out, Gallup found that burned-out employees are 2.6
times as likely to be actively seeking a different job, AND that only
60% of workers can strongly agree that they know what is expected of
them at work.</p>
<p>The bottom line is that people are burning out, a lot of them aren’t
getting help, and almost as many have no idea what standard they’re even
supposed to be meeting.</p>
<p>Maybe you can see why I’m not confident about that number going down
reliably. What are we missing out on because the talented people we
already have are at or near the end of their rope?</p>
<h2 id="crime-pays-a-lot-actually">Crime pays a lot, actually</h2>
<p>Adversaries are making more money, their jobs are easier, and they
work remotely. I’ve talked to people I know who were in ransomware gangs
or are currently in them, and most of them say their work lives are
easier.</p>
<p>What they told me boils down to a few simple points:</p>
<ul>
<li>No one is asking them to return to the office and commute through
traffic hell</li>
<li>The pay is better than what they might make legitimately</li>
<li>The work is generally easier (since many targets aren’t as
mature)</li>
</ul>
<p>How are salaried, commuting, underfunded infosec professionals
supposed to keep up?</p>
<p>There is a greater mission and much of the industry is not prepared
to accomplish it.</p>
<h3 id="disclaimer">Disclaimer</h3>
<p>Before I go any further, I need to get some things out of the
way:</p>
<ul>
<li>I am not an expert, a medical professional, or a psychiatrist</li>
<li>I cannot diagnose or account for existing mental illnesses, personal
situations, or other variables</li>
</ul>
<p>But rest assured, I have had my fair share of hard times. I am no
stranger to mental illness nor trauma. I know that life can be hard and
there are a lot of factors at play.</p>
<p>I get it. I’m not here to sell you a cure-all, or even a cure-most.
I’m here to share what worked for me and maybe impart something useful
to you.</p>
<h2 id="how-i-got-here">How I Got Here</h2>
<p>Like many, I spent the majority of 2020 working too hard, burning too
hot, and not getting the things I needed to be happy.</p>
<p>The company I worked at was in a period of intense growth where we
had plenty of new pentesting work to do, but some of us still needed to
make audits happen to pay the bills.</p>
<p>During that time, I started to study for my OSCP, and after seven
months, it had knocked me out. I would study for 3-4 hours per night and
all weekend in the labs, grabbing flags and honing my methodology.</p>
<p>I failed my first exam attempt in late September but came back with a
vengeance by the end of October. Then I descended into one of the
deepest ruts of my life.</p>
<h2 id="collecting-debt-from-yourself">Collecting debt from
yourself</h2>
<p>What confounded me is that I was just doing something I loved:
learning and improving my pentesting skill set.</p>
<p>But the price I ended up paying was steep, and it took a lot longer
to cover my debt to my passion than it did to destroy my passion.</p>
<p>The year after (2021) was filled with attempts to pursue my passion
without the energy I needed, leaving me feeling unfulfilled and
frustrated at my sudden lack of progress in my career, but even more
disappointingly, lack of appreciation for something I was once
fascinated by.</p>
<p>I would listen to my favorite security podcasts and roll my eyes when
people would talk about how energized they were and could spend hours
just learning. My cynicism was through the roof, and the problem wasn’t
them - it was me. I needed to feel better. My new state was not
sustainable, and I needed a solution. That’s how I came up with what’s
in this blog.</p>
<p>It took me a long time, but I made it, and I want to share that with
anyone who’s in that same place.</p>
<hr />
<p><em>Look out for “Part 1: Where To Start”, coming soon.</em></p>
]]></content:encoded>
    </item>
    <item>
      <title>Mastodon, Musk, and Mythbusting: The Case for Federation</title>
      <link>https://ryanbasden.com/blog/federation-myths/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/federation-myths.html</guid>
      <pubDate>Sun, 06 Nov 2022 00:00:00 +0000</pubDate>
      <description>The old internet was better anyway.</description>
      <content:encoded><![CDATA[<p>In the wake of Elon Musk’s acquisition of Twitter, Mastodon instances
have seen some of the highest sign-up volume ever.</p>
<p>This has sent my typical corner of Twitter into somewhat of a
debate.</p>
<p>Dubbed “Infosec Twitter”, exploit researchers, red teams, SOC
analysts, CISOs, DFIR teams, and more can reliably be found commenting
on the news of the day, sharing research, discussing breaches, and
more.</p>
<p>When I joined Twitter in early 2020, I did it primarily because I was
starting to present at conferences and knew that it would benefit me to
have some kind of network, and LinkedIn still grossed me out.</p>
<p>What I found there was a mixture of enlightenment and confusion, of
insight and of disappointment.</p>
<p>Amid my newfound source of threat intel, tradecraft, and (of course),
memes, was something I didn’t expect: the hacker culture I grew up in
was surprisingly absent.</p>
<p>Instead of discussing information freedom, privacy, or technology
that helped people, I found arguments about whether offensive tooling
was okay to publish, whether EDR is good, and whether infosec is an
entry-level field (to list only a few).</p>
<p>The kinds of topics I used to see regularly on forums and IRC were
rare to see.</p>
<p>Luckily, curating who you follow helps a lot with this. A muted word
here, a muted account there, and you can end up with a feed of topics
you mostly care about.</p>
<p>This has changed even in the short time I’ve had an account, though,
in that Twitter has been serving more and more advertisements and
struggling to be profitable.</p>
<p>As Elon Musk has taken over Twitter and cleaned most of the house
out, it’s become evident that a platform up for purchase by any
individual is not a platform conducive to user freedom and control.</p>
<p>This is not a blog about ideological statements for or against Musk.
It does not matter to me <em>who</em> is able to take over Twitter for
$44B, only that <em>someone can</em>, and only as long as there are
alternatives.</p>
<p>However, in disappointingly predictable fashion, certain sections of
Infosec Twitter have been outspoken about the most popular platform,
Mastodon, being unrealistic and a non-answer to the problem of unitary
platform control.</p>
<p>This would be entirely reasonable if many accounts with large
audiences were not stating inaccurate information about it as
insurmountable downsides of the federated alternative.</p>
<h2 id="federation-mythbusting">Federation Mythbusting</h2>
<p>The purpose of this blog is to address as many of these myths as
possible with accurate information. So here we go.</p>
<h3 id="you-have-to-host-your-own-server">You have to host your own
server</h3>
<p>Though it would solve a lot of problems outlined in sections after
this one, no you do not have to host your own.</p>
<p>You can join any instance you want and see content from users on any
instance that is federating with yours. Conversely, any instances not
federating with yours (for any reason), will be invisible to you by
default.</p>
<h3 id="you-cant-verify-yourself-and-can-be-impersonated">You can’t
verify yourself and can be impersonated</h3>
<p>Again, not a problem if you host your own, but let’s assume you’re
not able to or don’t want to. That’s fine.</p>
<p>You can verify yourself via a relative link in a different place,
such as Keybase or your own website. By simply creating a link like this
on the homepage of your website:</p>
<div class="sourceCode" id="cb1"><pre
class="sourceCode html"><code class="sourceCode html"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="dt">&lt;</span><span class="kw">a</span><span class="ot"> rel</span><span class="op">=</span><span class="st">&quot;me&quot;</span><span class="ot"> href</span><span class="op">=</span><span class="st">&quot;https://infosec.exchange/@rybaz&quot;</span><span class="dt">&gt;</span>mastodon<span class="dt">&lt;/</span><span class="kw">a</span><span class="dt">&gt;</span></span></code></pre></div>
<p>…a Mastodon instance will show a green checkmark in my profile,
verifying me as the owner of that domain, which I use as my primary
source of identity on the internet.</p>
<p>The blue check on Twitter is only a luxury for certain high-profile
people anyway. If anything, those most at-risk for impersonation are
those who Twitter doesn’t deem worth verifying, rendering them helpless
to stop it.</p>
<h3 id="content-moderation-is-a-problem">Content moderation is a
problem</h3>
<p>Aside from this being a problem on every social media platform,
Twitter included, Mastodon instances can block entire other instances
themed around content they want nothing to do with.</p>
<p>If you join a mainstream instance with lots of people, you’re likely
to run into content you’d rather not see, but that’s why:</p>
<ol type="1">
<li>There are so many instances to potentially join, often centered
around interests or subcultures.</li>
<li>You can host your own.</li>
</ol>
<h3 id="dms-can-be-read-by-admins-of-instances">DMs can be read by
admins of instances</h3>
<p>Also a problem on Twitter and most any other platform owned or
operated by someone else.</p>
<p>Have sensitive conversations over channels you trust, like XMPP,
Matrix, Signal, Session, whatever.</p>
<h3 id="its-confusing">It’s confusing</h3>
<p>Of the people I interact with on a daily basis, including on Twitter,
I am on the lower end of the intelligence scale, and that’s a good
thing.</p>
<p>If I can spend 10 minutes Googling how Mastodon works, so can
everyone else.</p>
<p>This goes without saying that, in my short time on a Mastodon
instance, people have been more than willing to help new users figure
out how things work. All anyone has to do is ask.</p>
<h3 id="we-should-just-start-a-forum">We should just start a forum</h3>
<p>I love forums. I miss forums. I learned a ton from them.</p>
<p>Luckily, there are federated forum platforms like Lemmy that
accomplish that goal of asynchronous, topic-based discussion, while
being interoperable with other ActivityPub-based implementations.</p>
<h3 id="we-dont-need-another-social-media-site">We don’t need ANOTHER
social media site</h3>
<p>I agree. Completely.</p>
<p>I hate social media, but it’s the way of the world, and I want a
professional network. But apart from LinkedIn and Twitter, I don’t have
any other social media accounts, so the “too many platforms” exhaustion
isn’t very strong for me.</p>
<p>Federated platforms and protocols are meant to <em>clean up and
change</em> the noise, not add to it. It must be viewed as a different
way of interacting with digital communities in order for value to be
extracted.</p>
<h2 id="the-ethos-of-federation">The Ethos of Federation</h2>
<p>Switching to Mastodon or any other federated technology shouldn’t be
driven by the volume of content there is to consume there, but a desire
to invest in systems that are controlled by users instead of
corporations, investors, or executives.</p>
<p>Or where content isn’t force-fed to you by an algorithm to make you
angry, sad, happy, entertained, and lonely all in a single session of
scrolling.</p>
<p>Or where your dopamine levels aren’t corporate growth metrics,
measured by variance of spiking and sinking and correlated to
profit.</p>
<p>Federated services aren’t meant to be Twitter or Facebook
competitors. If you’re looking for one to replace the other, you’re
going to be disappointed, especially if you have a large audience on one
of them.</p>
<p>But large audiences and maximum reach is not what federation is
about.</p>
<p>It’s about taking back platform control and using open protocols.</p>
<p>It is about quality over quantity.</p>
<p>It’s about fostering the free and open exchange of information,
interoperability, and highly censorship resistant content. The same
arguments for Signal relays or Tor nodes in oppressive countries can be
made for Mastodon, Matrix, or any other federated tech.</p>
<p>If sufficient amounts of content is the #1 value driver for you to
use a platform, that’s fine, and centralized media may be what you
actually want, as it’s more conducive to quantity.</p>
<p>You’ll ultimately be disappointed with platforms that emphasize user
freedom over how long they can entertain you.</p>
<p>For better or for worse, that is the current dichotomy.</p>
<p>Federated platforms won’t get there overnight, but the dynamic of
“where everyone else is” only changes based on the decisions of
individuals, something the Twitter algorithm would rather you not
do.</p>
<p>If everyone waits for everyone else to go first, nothing will
change.</p>
<p>There is nothing to stop someone else from taking control of Twitter
or whatever comes next, be it a competitor or clone-like
alternative.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Secure Messaging for Paranoid Realists: Vol. 2</title>
      <link>https://ryanbasden.com/blog/secure-messaging-paranoid-realists-vol2/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/secure-messaging-paranoid-realists-vol2.html</guid>
      <pubDate>Sat, 11 Jun 2022 00:00:00 +0000</pubDate>
      <description>Reasons for not using Conduit anymore.</description>
      <content:encoded><![CDATA[<p>I’ve disabled <code>conduit.rs</code>, the Matrix service I had
running on my VPS.</p>
<p>There are several reasons for this, the first being that I don’t want
to deal with the bugs and resulting mishaps of an implementation in beta
(not right now, at least).</p>
<p>Though I’ve read that this has been fixed recently, as soon as I spun
up my Conduit server, I couldn’t communicate with most of the rooms
created on existing Synapse servers due to later versions of rooms not
being supported yet.</p>
<p>The second reason is that I’ve been evaluating some other options,
mainly Session. Though it’s not perfect, there are some things I like
about it that are impactful enough for me to put the Matrix ecosystem on
pause for now. To be clear, I still love what Matrix is doing, but
running my own instance is just a little more than I want to deal with
at the moment, and federation is the only way to truly realize the full
range of benefits offered by the protocol.</p>
<h2 id="session-messenger-breakdown-pros-and-cons">Session Messenger
Breakdown: Pros and Cons</h2>
<h3 id="pros">Pros</h3>
<ul>
<li>Uses Tor by default</li>
<li>Decentralized by default via volunteer-run nodes</li>
<li>APK is available via F-Droid</li>
<li>Doesn’t require any personal information on account creation</li>
</ul>
<h3 id="cons">Cons</h3>
<ul>
<li>Uses Google for notification services*</li>
<li>Desktop client is Electron-based</li>
</ul>
<p>*There is an option to not use Google’s notification servers, but
it’s a lot slower and you can’t set the check interval. <a
href="https://getsession.org/faq">From their FAQ:</a></p>
<blockquote>
<p>If you choose slow mode, the Session application runs in the
background and periodically polls its swarm (see What is a swarm) for
new messages. If a new message is found, it is presented to you as a
local notification on your device.</p>
<p>If you choose fast mode, Session will use Google’s FCM push
notification service to deliver push notifications to your device. This
requires that your device IP address and unique push notification token
are exposed to a Google operated push notification server. Additionally,
you will expose your Session ID and unique push notification token to an
OPTF operated push notification server, for the purpose of providing the
actual notifications to the Google FCM server.</p>
</blockquote>
<h2 id="session-vs-signal-and-why-i-will-use-both">Session vs Signal,
and Why I Will Use Both</h2>
<p>I see Signal and Session as complimentary layers. Session is arguably
more privacy-friendly than Signal for a few big reasons:</p>
<ul>
<li>Signal servers are centralizedconduit</li>
<li>Signal APK is not available on F-Droid</li>
<li>Phone number required for account creation</li>
</ul>
<p>Despite this, Signal has an advantage where Session does not: the
ability to replace SMS apps. Signal has basically become a catch-all for
anyone who might be using it with their phone number. This only applies
to around 3% of my contacts, but that’s better than 0%.</p>
<p>For anyone else who I communicate with on a regular basis, most of
them care about communications privacy and security enough to use a
separate app to achieve it.</p>
<h2 id="the-ideal-future-setup">The Ideal Future Setup</h2>
<p>More recently, Rocket.chat <a
href="https://rocket.chat/press-releases/rocket-chat-leverages-matrix-protocol-for-decentralized-and-interoperable-communications">announced
it’s building federation capability</a> via the Matrix protocol, which
is a refreshing move. Matrix has only ever wanted to be a protocol in
the same way that XMPP is a protocol, leaving the frontend messenger
client responsibility to others if you don’t want to use the one they
provide.</p>
<p>A single protocol that can be audited by the community is the best
case we can hope for outside of complete decentralization. There’s a
reason why e-mail with PGP is still considered one of the best ways to
communicate securely and privately: you at least control the keys.</p>
<p>If the answer to the problem of walled messenger gardens is Matrix,
it’s Matrix. I would love to see more of these platforms begin to adopt
interoperability so that people can finally stop juggling digital
communication channels based on contexts and pros/cons lists.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Learn Exploit Development for Free</title>
      <link>https://ryanbasden.com/blog/learn-exploit-dev-for-free/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/learn-exploit-dev-for-free.html</guid>
      <pubDate>Wed, 23 Mar 2022 00:00:00 +0000</pubDate>
      <description>A free guide to free resources for learning exploit development.</description>
      <content:encoded><![CDATA[<p>The most frustrating thing about hacking has become finding good
learning resources without breaking the bank.</p>
<p>While studying for CEH (hold the judgment, please, I was young and
naive), I had to resort to far more than just the EC-Council curriculum.
If you’ve ever tried for one of their certifications, you’ll know why:
the material isn’t good enough.</p>
<p>For the OSCP, I had the same experience. The PWK lab was not diverse
enough to make me feel truly prepared, and looking back, I’m glad I
resorted to sites like HackTheBox, Vulnerable Hacking Labs, and Vulnhub
for extra practice. Luckily, many outstanding individuals like TJNull
had compiled lists of practice machines for me to reference.</p>
<p>After spending time learning advanced pentesting and red team tactics
in a useful-but-never-too-deep manner, I’ve landed on exploit
development as my next deeper learning path. I’ve built a roadmap for
myself entirely made up of free resources and compiled it here.</p>
<p>I may edit this as I go, and I will post reviews as separate blogs if
warranted. If I do make a meaningful update, I’ll be sure to mention
that.</p>
<h2 id="prerequisite-x86-assembly-and-c">(Prerequisite) x86 Assembly and
C</h2>
<p>NASM and C are more important than I realized at first. A strong
understanding of both will help you tremendously as you get into the
actual exploit development and research parts of this.</p>
<p>Resources will be mostly focused around Linux to ensure that the
barrier to entry is as low as possible. Once I get into Windows, I’ll
add resources around that OS, but I’ll stick with what I know best for
now.</p>
<ul>
<li><a
href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Dbg1012_GDB_1+2021_v1/about">OpenSecurityTraining2
- Debuggers 1012: Introductory GDB</a></li>
<li><a
href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch1001_x86-64_Asm+2021_v1/about">OpenSecurityTraining2
- Architecture 1001: x86-64 Assembly</a></li>
<li><a
href="https://p.ost2.fyi/courses/course-v1:OpenSecurityTraining2+Arch2001_x86-64_OS_Internals+2021_v1/about">OpenSecurityTraining2
- Architecture 2001: x86-64 OS Internals</a></li>
<li><a href="https://learn-c.org/">Learn-C.org</a></li>
</ul>
<h3 id="books">Books</h3>
<ul>
<li><a href="https://www.biblio.com/9780131103627">The C Programming
Language 2e</a></li>
</ul>
<h2 id="linux-exploit-development">Linux Exploit Development</h2>
<p>This list contains a healthy mix of challenges, guides, course
material, and books. These resources are invaluable and I cannot believe
they are free.</p>
<ul>
<li><a href="https://exploit.education/phoenix/">Exploit.Education -
Phoenix</a></li>
<li><a href="https://exploit.education/nebula/">Exploit.Education -
Nebula</a></li>
<li><a
href="https://opensecuritytraining.info/Exploits1.html">OpenSecurityTraining
- Intro to Software Exploits</a> &amp; Course Textbook: <em>The
Shellcoder’s Handbook</em></li>
<li><a href="https://pwn.college/">pwn.college</a></li>
<li><a href="https://exploit.education/fusion/">Exploit.Education -
Fusion</a></li>
</ul>
<h3 id="books-1">Books</h3>
<ul>
<li><a
href="https://www.biblio.com/search.php?stage=1&amp;result_type=works&amp;keyisbn=the+art+of+exploitation">The
Art of Exploitation 2e</a></li>
</ul>
]]></content:encoded>
    </item>
    <item>
      <title>Secure Messaging for Paranoid Realists</title>
      <link>https://ryanbasden.com/blog/secure-messaging-paranoid-realists/</link>
      <guid isPermaLink="false">https://ryanbasden.com/blog/secure-messaging-paranoid-realists.html</guid>
      <pubDate>Tue, 01 Mar 2022 00:00:00 +0000</pubDate>
      <description>...like me.</description>
      <content:encoded><![CDATA[<p>In honor of the EARN IT Act clawing its way back out of the grave
(again), I want to discuss resilience to anti-encryption measures of all
kinds.</p>
<p>But first, what is paranoid realism, and what makes someone a
paranoid realist?</p>
<h2 id="healthy-doses-of-paranoia">Healthy Doses of Paranoia</h2>
<p>Having worked in security for so long, it’s difficult to not see most
technology as fundamentally broken. Web apps are built on APIs without
any access control, EDR can’t keep up with some of the most basic bypass
techniques, and on and on we go.</p>
<p>Test turning your own webcam on via Meterpreter and you’ll understand
what I’m getting at: this shit is easy, and you may not know when you’re
being watched.</p>
<p>There are three ways of approaching this new, substantiated feeling
of paranoia: ignorance, fatalism, and realism.</p>
<p>The first is the easiest and just involves sticking your head in the
sand. The second is deciding that because there are things you can’t
control, you might as well not do anything about anything.</p>
<p>Finally, realism (or pragmatism, if you prefer it) involves doing the
best with what you have. Technology will never be hack-proof, but it’s
also never been easier to take some meaningful steps to improve your
resiliency against the inevitable.</p>
<p>All three can be characterized by their response to the idealism of
perfect security:</p>
<ul>
<li>Ignorance is simply unaware of it or refuses to be aware of it.</li>
<li>Fatalism is aware of it but sees it as unattainable and therefore
worthless wholesale.</li>
<li>Realism is aware of it and knows that something is better than
nothing at all.</li>
</ul>
<p>One of my favorite books, “Absolute OpenBSD, 2nd Edition: Unix for
the Practical Paranoid”, was written for this mindset. From the book’s
introduction:</p>
<blockquote>
<p>It’s not that everyone on the Internet is trying to attack you, but
there’s always <em>someone</em> who wants to break into your system.
Even if you think you have nothing of value, someone wants to own your
computer. And you won’t realize the value of what you have until someone
else has it. That’s just human nature.</p>
<p>If you’re not paranoid on the Internet, you’re in trouble.</p>
<p>Michael W. Lucas, <em>“Absolute OpenBSD, 2nd Edition: Unix for the
Practical Paranoid”</em></p>
</blockquote>
<h2 id="dispelling-fatalist-mythology-and-threat-model-ism">Dispelling
Fatalist Mythology and Threat-model-ism</h2>
<p>Choosing to remain ignorant is the choice of each individual. I can
do nothing about this, and I wish you luck if that’s your path.</p>
<p>Fatalism, on the other hand, I have a refutation for. Additionally,
fatalism’s close cousin, threat-model-ism, this is for you, too.</p>
<p>The argument that you should only care about encryption if your
personal threat model requires it, whether for messaging only or for as
much internet traffic as possible, is made by many seemingly
knowledgable people, much to my concern.</p>
<p>For example, a VPN will not make you anonymous on the internet. Sure,
it can hide your source IP from the destination and it keeps your ISP
from snooping on a good portion of your traffic, but it doesn’t do much
more than that.</p>
<p>Keeping my ISP out of my data in transit is a good enough reason for
me to use one, even if it’s just to keep them from throttling certain
services, as Comcast did with <a
href="https://mattvukas.com/2014/02/10/comcast-definitely-throttling-netflix-infuriating/">Netflix
not long ago</a>.</p>
<p>I also would rather them not sell my browsing habits to advertisers
or tell me what proper use of the internet constitutes. Even if these
practices are not predatory to an Orwellian level yet, they could get
there in the future.</p>
<p>And even if they don’t, caring about privacy as a principle is the
only reason you need to run a VPN, encrypt your messages, et cetera.</p>
<p>Lastly, threat models evolve. Many small businesses probably wouldn’t
have considered themselves very interesting to multi-million-dollar
ransomware gangs 10 years ago, but they’ve been such easy targets
recently that they’re now one of the most common victim types.</p>
<p>I could go on for much longer about this, and I may do so in future
posts, but that’s not the goal of this one.</p>
<h2 id="what-is-the-earn-it-act">What is the EARN IT Act?</h2>
<p>The EARN IT Act is yet another government attempt at breaking
encryption in order to protect children online. While protecting
children is a noble and worthy enterprise, like any other effort, there
are methods that work and methods that don’t.</p>
<p><a
href="https://cyberlaw.stanford.edu/blog/2022/02/earn-it-act-back-and-it%E2%80%99s-more-dangerous-ever">According
to Stanford, not only does EARN IT not work</a>, but it will actually do
the opposite of what it intends to do:</p>
<blockquote>
<p>…the EARN IT Act would do little to protect child sex abuse victims –
to the contrary, it risks making it even harder to track down and
convict offenders.</p>
</blockquote>
<p>I encourage to read the entire article linked above. In the end, true
to form for over a decade, this is a case of people with power
exercising said power in areas they fundamentally misunderstand. What is
unclear is how long this phenomenon will continue to plague us.</p>
<p>While we have no answer to that question, we can at the very least
take steps to reduce the impact of weaponized ignorance of this sort by
utilizing systems that are the opposite of fragile, or as Nassim Taleb
puts it, “anti-fragile”.</p>
<p>Communication channels that are not fragile are the true resilience
to legislation like this, so we need a way to evaluate them and choose
the ones that really work.</p>
<h2 id="evaluating-anti-fragility-aaa">Evaluating Anti-fragility
(AAA)</h2>
<p>In order to objectively evaluate communication platforms and
protocols for anti-fragility, we have to establish criteria. The
information security industry has been using confidentiality, integrity,
and availability (CIA) for a long time and it’s a good measurement set,
but it doesn’t really cover enough for me.</p>
<p>Instead, I’ve come up with the three As to evaluate a platform or
protocol: availability, anonymity, and autonomy.</p>
<ul>
<li><strong>Availability</strong>: it does not have to suffer impact of
external events.</li>
</ul>
<p>Something that is completely out of my control, such as downtime of a
server I don’t own or maintain, should not inhibit my ability to
communicate. Whether it’s the Signal servers, a CDN, or the entirety of
us-east-1, my communications should be unaffected.</p>
<ul>
<li><strong>Anonymity</strong>: the ultimate privacy is pure anonymity,
and this must be possible.</li>
</ul>
<p>I should be able to completely control the details of my identity,
from source IP to registration details. No phone numbers, email
addresses, physical addresses, or anything that sits outside the
function of the platform/protocol.</p>
<ul>
<li><strong>Autonomy</strong>: it can be used without third-party
permission or interference.</li>
</ul>
<p>I should be able to use it without anyone else’s input. No one,
including my ISP, VPS provider, domain name registrar, smartphone app
store, federal government, et al should be in control of how I
communicate, nor should they be able to easily place an injunction on my
use.</p>
<p><em>Note: These metrics operate on the idea of perfection, so nothing
will likely</em> <em>ever fully meet them. This is on purpose so that we
can remain objective and</em> <em>honest as we are realists here, and we
prefer better over stagnant.</em></p>
<h2 id="case-studies-of-popular-platforms">Case Studies of Popular
Platforms</h2>
<p>Below are some examples of how common messaging platforms and
protocols match up to AAA. Let’s use a 1-5 scale.</p>
<p><em>Note: This is not a comprehensive or systematic list, nor are
each of the</em> <em>platforms I mention in the list comprehensively or
systematically scored. I am</em> <em>trying to make a point with some
fuzzy numbers, though I may soon catalog these</em> <em>by metrics and
score them more consistently.</em></p>
<h3 id="sms">SMS</h3>
<p><strong>Availability:</strong> 0 <strong>Anonymity:</strong> 0
<strong>Autonomy:</strong> 0</p>
<p>Not much to say here. It’s horribly insecure, out of our control, and
dependent on cell towers we don’t own.</p>
<h3 id="imessage">iMessage</h3>
<p><strong>Availability:</strong> 3 <strong>Anonymity:</strong> 2
<strong>Autonomy:</strong> 1</p>
<p>This is probably my favorite one to pick on because some iPhone users
see non-iMessage users (or, derogatorily, the undesirable green bubbles)
as members of lower socioeconomic castes, which is profoundly
cringe.</p>
<p>I’m not exaggerating either. I’ve spoken to people who purposely
exclude Android users from group chats with friends for not having
iMessage. This has happened to me personally, also, and all I can do is
look at all my Signal conversations and not care.</p>
<p>It’s a great communication channel for iPhone-to-iPhone
communication, but it is by no means anti-fragile. The servers and OS
(the user gateway) are fully in Apple’s control, as is the
encryption.</p>
<p>I’ve heard that it’s also a uniquely American thing to use iMessage
universally, which brings me to my next platform.</p>
<h3 id="whatsappany-social-media-chat-feature">WhatsApp/any social media
chat feature</h3>
<p>In Europe, Asia, and many other areas of the world, WhatsApp is the
staple communication plaform. However, like any platform run by a giant
company (Facebook), it scores fairly low on all three As.</p>
<p>The data is definitely being collected, the traffic runs through
centralized locations…need I say more?</p>
<p><strong>Availability:</strong> 3 <strong>Anonymity:</strong> 1
<strong>Autonomy:</strong> 1</p>
<h2 id="case-studies-for-niche-non-mainstream-platforms">Case Studies
for Niche (Non-Mainstream) Platforms</h2>
<h3 id="signal">Signal</h3>
<p><strong>Availability:</strong> 2 <strong>Anonymity:</strong> 3
<strong>Autonomy:</strong> 1</p>
<p>Signal is the app that actually made me write this blog because I
resisted it for a very long time.</p>
<p>I wanted a perfect solution for all my non-SMS communication that
wouldn’t add to my existing paranoia, but many of the alternatives at
the time were difficult to adopt for most people or were being bought up
by bigger corporations with unclear motives (Keybase and Wire, looking
at you).</p>
<p>However, I had to realize that some encrypted chats were better than
no encrypted chats. This is paranoid realism at work and is how you have
to approach this stuff sometimes.</p>
<p>Now if they would just build an F-Droid version…</p>
<h3 id="telegram">Telegram</h3>
<p><strong>Availability:</strong> 2 <strong>Anonymity:</strong> 3
<strong>Autonomy:</strong> 1</p>
<p>This is the one I really want to drive some points home about.</p>
<p>It’s not the only service that masquerades as an end-to-end
encryption service for chat while maintaining a master encryption key
and centralized servers.</p>
<p>Telegram’s clients are open-source, but their back-end infrastructure
is not. This is where everything is stored and where all the data
travels through, so this is a big red flag.</p>
<p>Any possibility of compromising any part of AAA is not acceptable.
There has to be trust between developers, the platform, and the users,
and this is not possible without completely open-source code and
standards, front to back.</p>
<h3 id="matrixxmpp">Matrix/XMPP</h3>
<p><strong>Availability:</strong> 4.5 <strong>Anonymity:</strong> 4.5
<strong>Autonomy:</strong> 5</p>
<p>I am well aware that these are not the same thing, but I’ve lumped
them together because, in my opinion, there are the best options we
currently have.</p>
<ul>
<li>The code is all open-source, server to client and back.</li>
<li>The encryption is truly E2E, which we know because we can look at
it.</li>
<li>You can host your own server for yourself or anyone else.</li>
<li>Communication is federated, meaning no central server controls who I
talk to.</li>
</ul>
<p>That said, I’ve only given them both 4.5 for the first two As. This
is because without a central server, they are dependent on external
factors such as your VPS provider and other infrastructure you have no
control over.</p>
<p>Perhaps if you were to self-host them at home, that would change, but
I haven’t thought through that one.</p>
<p>Between the two of them, the cons that they don’t share cancel each
other out and, I think, provide the best option for secure messaging at
the moment.</p>
<h2 id="honorable-mentions">Honorable Mentions</h2>
<p>These are some projects that I think have promise, mainly because
they’re doing things differently. I don’t use them personally and never
have, but I expect that they will eventually have niche followings of
their own and am watching them with great interest.</p>
<ul>
<li><a href="https://briarproject.org/">Briar</a></li>
<li><a href="https://briarproject.org/">DeltaChat</a></li>
</ul>
]]></content:encoded>
    </item>
  </channel>
</rss>
