<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Incomplete I&#x2F;O - Blog</title>
    <subtitle>Linux Systems and Security products and development in the web3 and AI spaces.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://draft.incomplete.io/blog/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://draft.incomplete.io/blog/"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-10-07T00:00:00+00:00</updated>
    <id>https://draft.incomplete.io/blog/atom.xml</id>
    <entry xml:lang="en">
        <title>AI Deepfakes</title>
        <published>2026-10-07T00:00:00+00:00</published>
        <updated>2026-10-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Incomplete I&#x2F;O Team
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://draft.incomplete.io/blog/ai-deepfakes/"/>
        <id>https://draft.incomplete.io/blog/ai-deepfakes/</id>
        
        <content type="html" xml:base="https://draft.incomplete.io/blog/ai-deepfakes/">&lt;p&gt;Impersonation has been a problem since the dawn of time. We have taken great strides in reducing the risk of one computer impersonating another computer when interacting with a third computer. We can also be pretty confident that the user of a computer is who they say they are and not an imposter. Much of this is done with &lt;em&gt;cryptography&lt;&#x2F;em&gt; -- the same stuff that makes it safe for you to shop and bank online.&lt;&#x2F;p&gt;
&lt;p&gt;However, we don&#x27;t have a good way to prevent impersonation of humans over things like voice or video calls. The news is littered with cases of employees unintentionally leaking data to a nefarious actor just because they sounded convincing.&lt;&#x2F;p&gt;
&lt;p&gt;With the advent of very advanced &lt;em&gt;speech and video synthesis&lt;&#x2F;em&gt;, it has become much easier for the bad guys to have an AI agent call you and pretend to be your grandkid or your boss and convince you to do things you wouldn&#x27;t otherwise. If one of your kids studying abroad calls and needs some cash for an emergency, we&#x27;d likely all make that happen. But how do you know it&#x27;s one of your kids?&lt;&#x2F;p&gt;
&lt;p&gt;We need an &lt;em&gt;authentication&lt;&#x2F;em&gt; system that enables you to &lt;em&gt;Confirm&lt;&#x2F;em&gt; that the person on the phone is who you think it is. That&#x27;s precisely the case that the &lt;em&gt;Confirm&lt;&#x2F;em&gt; app (and other tools) were designed to solve. Download the app, create trusts with the app and the people you, well, trust. From that point on, you can both Confirm that you&#x27;re not being impersonated -- even over a phone or video call.&lt;&#x2F;p&gt;
&lt;p&gt;Find out more, and download the (free and open) app here...&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Securing Against The Robots</title>
        <published>2026-10-05T00:00:00+00:00</published>
        <updated>2026-10-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Incomplete I&#x2F;O Team
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://draft.incomplete.io/blog/securing-against-the-robots/"/>
        <id>https://draft.incomplete.io/blog/securing-against-the-robots/</id>
        
        <content type="html" xml:base="https://draft.incomplete.io/blog/securing-against-the-robots/">&lt;p&gt;Whether you buy into the hype that AI has come alive and is out to get us, or not, the fact remains that using LLMs to discover and automate large scale attacks against our online services is a very real risk.&lt;&#x2F;p&gt;
&lt;p&gt;This brief article lists five principles that can be applied to better secure your applications and services from bad actors.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;limit-attack-surface&quot;&gt;Limit Attack Surface&lt;&#x2F;h2&gt;
&lt;h2 id=&quot;defense-in-depth&quot;&gt;Defense In Depth&lt;&#x2F;h2&gt;
&lt;p&gt;Defense In Depth&lt;&#x2F;p&gt;
&lt;div class=&quot;callout callout--note&quot;&gt;
  &lt;p class=&quot;callout__label&quot;&gt;Note&lt;&#x2F;p&gt;
  &lt;div class=&quot;callout__body&quot;&gt;
Stuff in a callout box.
  &lt;&#x2F;div&gt;
&lt;&#x2F;div&gt;&lt;h2 id=&quot;least-privilege&quot;&gt;Least Privilege&lt;&#x2F;h2&gt;
&lt;p&gt;Principle of least privilege&lt;&#x2F;p&gt;
&lt;h2 id=&quot;logging-and-auditing&quot;&gt;Logging and Auditing&lt;&#x2F;h2&gt;
&lt;p&gt;Log stuff.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;remember-the-humans&quot;&gt;Remember the Humans&lt;&#x2F;h2&gt;
&lt;p&gt;Social Engineering.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>AI Foot-Guns</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Incomplete I&#x2F;O Team
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://draft.incomplete.io/blog/ai-footgun/"/>
        <id>https://draft.incomplete.io/blog/ai-footgun/</id>
        
        <content type="html" xml:base="https://draft.incomplete.io/blog/ai-footgun/">&lt;p&gt;&lt;img src=&quot;&#x2F;images&#x2F;foot-gun-ai.png&quot; alt=&quot;ai-foot-gun&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;With the sporadic, yet increasing sound of Artificial Intelligence Agent Foot-Guns&lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt; going off in the distance, I&#x27;m left wondering whether we&#x27;ve forgotten the lessons of the past. Or perhaps in the rush to use Large Language Models (LLMs) for everything we&#x27;re forgetting to put up the same guard rails we did to protect ourselves from &lt;em&gt;Organic Intelligence&lt;&#x2F;em&gt; &quot;hallucinations&quot;. What am I misssing?&lt;&#x2F;p&gt;
&lt;p&gt;It seems like every other day, we&#x27;re reading about someone&#x27;s experience with LLM-driven automation, such as Agentic AI, ending in tears and with fewer toes. Entire datasets and backups gone. Whole software repositories left a smoking crater.&lt;&#x2F;p&gt;
&lt;p&gt;This isn&#x27;t an anti-AI post by any stretch. I&#x27;m not an AI naysayer, preaching about the impending AI-pocalypse. But I&#x27;m also not a member of the AI cult, drinking the Kool-Aid without checking the ingredients. Like any tool we&#x27;ve developed in the industry ever, once you see past the hype, there&#x27;s value to be had, but also caution to be exercised.&lt;&#x2F;p&gt;
&lt;p&gt;I started my first software development job in 2000. I already had some years of running production systems in previous roles at that point, all using the only thing we had back then -- &lt;em&gt;Organic Intelligence&lt;&#x2F;em&gt;. But my employer at this software development company didn&#x27;t, on my first day, hand me the keys to their customers&#x27; production databases to drop it as I see fit. So why are folks out there &lt;em&gt;granting&lt;&#x2F;em&gt; these agents the ability to wipe out a whole dataset?&lt;&#x2F;p&gt;
&lt;p&gt;A few years further into my career, I was running some security and other courses for telecommunications companies, utility companies and government. One of the key security concepts we used to drive home was to grant the least privilege necessary for a given user. So why are folks out there granting agents permission to wipe out entire software repos. In most organisations I&#x27;ve worked for, we generally all have to create a pull request and have it reviewed before it&#x27;s merged.&lt;&#x2F;p&gt;
&lt;p&gt;My (admittedly relatively new) experience with self-hosting LLMs and agents suggests that there are numerous ways to separate different concerns for different agent functions. It&#x27;s also definitely possible to have LLMs write test cases that would also act as an extra set of checks and balances.&lt;&#x2F;p&gt;
&lt;p&gt;A previous employer and mentor of mine once described there being a difference between a software engineer or software developer, and someone who can write code. In some ways, the code written is less important than some of the other things that the job entails.&lt;&#x2F;p&gt;
&lt;p&gt;LLMs can write code, but there&#x27;s a lot they&#x27;re missing that an engineer brings. The same likely applies for other automated tasks.&lt;&#x2F;p&gt;
&lt;p&gt;So whilst we&#x27;re offloading the writing of code (arguably the most fun part) to AI, perhaps we need to remember to take care of the rest of the job that AI can&#x27;t, and to supervise it with the same sorts of guardrails we would any human with Organic Intelligence.&lt;&#x2F;p&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;The term &lt;em&gt;foot-gun&lt;&#x2F;em&gt; is common slang for tools or functionalities within a technology that grant the user all the power they need to shoot themselves in the foot.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
</content>
        
    </entry>
</feed>
