<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: facilishz</title>
    <description>The latest articles on DEV Community by facilishz (@facilishz).</description>
    <link>https://dev.to/facilishz</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4183994%2Ffd88c2b9-a264-42db-ab72-a7e58239788c.png</url>
      <title>DEV Community: facilishz</title>
      <link>https://dev.to/facilishz</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/facilishz"/>
    <language>en</language>
    <item>
      <title>What CVE-2026-95675 Teaches About End-of-Life Wireless Hardware</title>
      <dc:creator>facilishz</dc:creator>
      <pubDate>Thu, 15 Oct 2026 03:41:05 +0000</pubDate>
      <link>https://dev.to/facilishz/what-cve-2026-95675-teaches-about-end-of-life-wireless-hardware-2j77</link>
      <guid>https://dev.to/facilishz/what-cve-2026-95675-teaches-about-end-of-life-wireless-hardware-2j77</guid>
      <description>&lt;h1&gt;
  
  
  What CVE-2026-95675 Teaches About End-of-Life Wireless Hardware
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Setting
&lt;/h2&gt;

&lt;p&gt;CVE-2026-95675 is a critical, unauthenticated command injection in the D-Link DAP-1360, a wireless access point and range extender that the vendor retired in August 2020. The flaw grants root-level command execution through the web management interface. There is no fix and none will be produced.&lt;/p&gt;

&lt;h2&gt;
  
  
  The technical detail
&lt;/h2&gt;

&lt;p&gt;The web server binary behind &lt;code&gt;apply.cgi&lt;/code&gt; handles network diagnostics by reading the &lt;code&gt;ipv4 ping&lt;/code&gt; parameter and formatting it into a system &lt;code&gt;ping&lt;/code&gt; command. The composed string reaches the command interpreter without sanitisation. Shell metacharacters in the parameter therefore become commands, executed as root, with no authentication required. Firmware 6.14 and earlier is affected across all hardware revisions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why wireless hardware ages badly
&lt;/h2&gt;

&lt;p&gt;Wireless access points and range extenders are often the last devices to be refreshed. They are cheap, they are physically distributed, and they keep working long after they leave support. That makes them ideal long-term residents of a network and poor candidates for the kind of continuous patching that servers receive. By the time a critical flaw appears, the installed base is undocumented and the vendor has moved on.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exposure
&lt;/h2&gt;

&lt;p&gt;A ZoomEye search for the product fingerprint &lt;code&gt;app="D-Link DAP-1360"&lt;/code&gt; returned 423 matching instances worldwide at the time of writing. A CVE-scoped query, &lt;code&gt;vul.cve="CVE-2026-95675"&lt;/code&gt;, returned no indexed assets, which is expected for a freshly assigned identifier. The product fingerprint therefore gives the more useful exposure estimate, and it only counts assets that still answer with a recognisable DAP-1360 signature; devices hidden behind firewalls or with a modified management banner are not represented.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical lessons
&lt;/h2&gt;

&lt;p&gt;Track end-of-life dates as part of procurement, not as an afterthought. Maintain inventory coverage for small network hardware, because the DAP-1360 lesson is that these devices accumulate invisibly. Assume that retired hardware will eventually receive a public exploit, and plan replacement on that basis rather than waiting for a trigger.&lt;/p&gt;

&lt;h2&gt;
  
  
  Immediate actions
&lt;/h2&gt;

&lt;p&gt;Replace affected units. In the interim, isolate their management interfaces and rotate any credentials stored on them.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://securityonline.info/d-link-dap-1360-vulnerability-poc/" rel="noopener noreferrer"&gt;D-Link DAP-1360 vulnerability details and PoC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;D-Link product security advisory for the retired DAP-1360 family&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>security</category>
      <category>vulnerability</category>
      <category>dlink</category>
      <category>commandinjection</category>
    </item>
    <item>
      <title>P4 Search shipped a default service token: inside CVE-2026-100103</title>
      <dc:creator>facilishz</dc:creator>
      <pubDate>Thu, 15 Oct 2026 01:00:43 +0000</pubDate>
      <link>https://dev.to/facilishz/p4-search-shipped-a-default-service-token-inside-cve-2026-100103-24c1</link>
      <guid>https://dev.to/facilishz/p4-search-shipped-a-default-service-token-inside-cve-2026-100103-24c1</guid>
      <description>&lt;h1&gt;
  
  
  P4 Search shipped a default service token: inside CVE-2026-100103
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;Perforce published P4 Search 2026.4.2 on 5 October 2026, closing six security defects in the search service that runs in front of Perforce P4, the source control platform formerly known as Helix Core. The release carries three critical ratings, one high and two medium. The top score belongs to CVE-2026-100103, rated 10.0 under CVSS 4.0, and it exists because the official container images reset the service authentication token to a publicly documented default value. Perforce reports no exploitation in the wild and no public proof of concept.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the defect is
&lt;/h2&gt;

&lt;p&gt;P4 Search guards privileged calls with a service authentication token. In the affected container images, startup overwrites that token with a fixed default that also appears in public material. Anyone who can reach the service on the network can offer a credential they already possess and receive the highest application privilege the service exposes. There is no parsing bug, no memory corruption and no race to win. The control simply begins in the wrong state.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a default credential is not a minor oversight
&lt;/h2&gt;

&lt;p&gt;Exploitation normally requires an attacker to find a weakness and then build a reliable way to reach it. A published default token removes that work. The remaining requirement is network reachability, which is common for an internal search endpoint that developers query from workstations and build agents. That combination explains the 10.0 score: the confidentiality, integrity and availability consequences are complete, and the attack needs no specialised skill.&lt;/p&gt;

&lt;h2&gt;
  
  
  The rest of the release
&lt;/h2&gt;

&lt;p&gt;The patch set is broader than one flaw. CVE-2026-100102, rated 9.5, exposes an unauthenticated Java Debug Wire Protocol interface in the same images, and reaching it allows execution of arbitrary code as the P4 Search service account. CVE-2026-103510, again 9.5, is a fail-open condition in which a blank service token grants full privileges to unauthenticated callers. CVE-2026-103507, at 7.5, lets a token holder write arbitrary files through the logging configuration path, which can be turned into code execution. CVE-2026-103511, at 5.1, allows file writes through the extension installer, and CVE-2026-103512, at 5.3, lets a stolen P4 Server ticket bypass host-based restrictions by spoofing a client address.&lt;/p&gt;

&lt;h2&gt;
  
  
  Affected versions and scope
&lt;/h2&gt;

&lt;p&gt;All six defects affect P4 Search 2026.4.1 and earlier. The two most severe issues apply to the official container images, which is where the default token and the debug interface come from. The file-write and ticket-binding flaws apply more widely, including to deployments that already use a non-default token.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exposure measured with ZoomEye
&lt;/h2&gt;

&lt;p&gt;On 6 October 2026 a ZoomEye query for the Perforce application fingerprint returned 139 matching assets, and a title-based query returned 263. These numbers describe systems that identify themselves as Perforce infrastructure. They are not confirmed P4 Search installations and not confirmed vulnerable hosts, so they act as a scale indicator rather than an infection count.&lt;/p&gt;

&lt;h2&gt;
  
  
  Remediation
&lt;/h2&gt;

&lt;p&gt;Upgrade P4 Search to 2026.4.2 and rebuild container deployments from the patched image instead of patching in place. Replace the service token with a strong, unique value and rotate it after the upgrade. Keep P4 Search off the public internet, block the debug port at the container and host firewall, and review P4 Server tickets for signs of misuse. Teams that must keep an older build online in the short term should treat the search service as untrusted and isolate it from the P4 Server network path.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;SecurityOnline report on the six P4 Search vulnerabilities (collected source).&lt;/li&gt;
&lt;li&gt;ZoomEye search for &lt;code&gt;app="Perforce"&lt;/code&gt; and &lt;code&gt;title="Perforce"&lt;/code&gt;, recorded 6 October 2026.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>perforce</category>
      <category>p4search</category>
      <category>cve2026100103</category>
      <category>defaultcredential</category>
    </item>
    <item>
      <title>Scoping Estonia’s Public-Sector Attack Surface After September’s DDoS Wave</title>
      <dc:creator>facilishz</dc:creator>
      <pubDate>Thu, 15 Oct 2026 00:20:43 +0000</pubDate>
      <link>https://dev.to/facilishz/scoping-estonias-public-sector-attack-surface-after-septembers-ddos-wave-3c87</link>
      <guid>https://dev.to/facilishz/scoping-estonias-public-sector-attack-surface-after-septembers-ddos-wave-3c87</guid>
      <description>&lt;h1&gt;
  
  
  Scoping Estonia’s Public-Sector Attack Surface After September’s DDoS Wave
&lt;/h1&gt;

&lt;p&gt;In September 2026, Estonia’s state information system authority, the Riigi Infosüsteemi Amet (RIA), recorded 964 cyber incidents with an impact. Among them were distributed denial-of-service attacks against the websites of banking, healthcare, energy, transport and water organisations, government agencies and political parties. A separate burst hit the national authentication service with more than 86 million requests, over a hundred times the normal load.&lt;/p&gt;

&lt;p&gt;That summary is short. The work it implies is not. When availability incidents arrive in clusters, the first useful question is not who did it but what is actually reachable from outside. An incident report tells you what was attacked. It rarely tells you how much of your organisation was visible in the first place.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem with incident-led inventory
&lt;/h2&gt;

&lt;p&gt;Most teams learn the shape of their external estate during the incident. A service goes down, engineers trace it, and someone discovers that a forgotten hostname still resolves, that a test instance shares a production certificate, or that a partner portal sits on infrastructure nobody has reviewed in two years.&lt;/p&gt;

&lt;p&gt;September’s Estonian incidents fit that pattern. The reported targets span sectors that share very little infrastructure but a great deal of public exposure. Websites for health, energy and transport organisations are not one system. They are many, operated by different bodies, with different maintenance cycles and different tolerances for downtime.&lt;/p&gt;

&lt;p&gt;Scoping that estate is a measurement problem before it is a defence problem. You cannot prioritise what you have not enumerated.&lt;/p&gt;

&lt;h2&gt;
  
  
  What an external measurement shows
&lt;/h2&gt;

&lt;p&gt;A cyberspace search engine such as ZoomEye indexes internet-visible assets: hosts, services, certificates, banners and page titles. Querying by country and industry gives a rough, reproducible picture of how much public-sector infrastructure is externally observable.&lt;/p&gt;

&lt;p&gt;For Estonia, a query for government-industry assets returns 263 matching observations.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;country="EE" &amp;amp;&amp;amp; industry="government"
Exposure: 263 matching assets (ZoomEye, 2026-10-14 UTC, sub_type=all)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That figure is a count of indexed matches, not a list of victims. It says nothing about whether any of those assets was attacked, vulnerable or misconfigured. What it does say is that the country’s government-sector footprint is large enough to be enumerated externally, and small enough to be reviewed deliberately.&lt;/p&gt;

&lt;p&gt;Broadening the lens makes the scale clearer. Estonian domain assets serving HTTPS return 21,335 observations. Assets answering on port 443, including hosts without a matching domain record, return 135,740.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;country="EE" &amp;amp;&amp;amp; service="https" &amp;amp;&amp;amp; is_domain=true
Exposure: 21,335 domain assets

country="EE" &amp;amp;&amp;amp; port="443"
Exposure: 135,740 assets
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The gap between those two numbers is itself informative. A large share of externally visible Estonian TLS endpoints are not tied to a discoverable domain. Those are the assets that tend to be missing from internal inventories, because inventories are usually built from domain and certificate records.&lt;/p&gt;

&lt;h2&gt;
  
  
  Turning a count into a worklist
&lt;/h2&gt;

&lt;p&gt;A count is only the first step. The useful output of an external measurement is a comparison: what is visible outside against what is known inside.&lt;/p&gt;

&lt;p&gt;For a public-sector organisation, that comparison usually surfaces three categories of asset. The first is expected and documented — the services the organisation knows about and maintains. The second is expected but undocumented — systems that exist in spreadsheets rather than in configuration management. The third is unexpected, and this is where measurement earns its place: hosts that resolve, respond, and have no owner.&lt;/p&gt;

&lt;p&gt;The third category deserves priority, not because it is necessarily vulnerable, but because it cannot be defended by process. No patch cycle covers a host nobody knows exists.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical scoping steps
&lt;/h2&gt;

&lt;p&gt;A defensible external scoping exercise for a public-sector body looks roughly like this.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Fix the scope. Choose the country, industry, organisation or ASN boundaries you can justify, and record them. A query without a recorded scope cannot be repeated or audited.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Capture the baseline once. Record the query, the date and the count. The value of a baseline comes from comparison, not from the first reading.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Attribute every match. For each externally visible asset, identify an internal owner. Unattributed assets move to the top of the worklist.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Separate exposure from vulnerability. An observable host is not a compromised host. Keep the two questions distinct or the worklist becomes unusable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Re-measure on a schedule. Monthly comparison catches new hosts faster than annual audits.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Reading the September numbers honestly
&lt;/h2&gt;

&lt;p&gt;The temptation after a DDoS wave is to treat every number as evidence of weakness. The 86 million requests against the national authentication service is a measure of attack volume, not of defensive failure; RIA reported that the service continued to function with short delays. The 263 government-industry matches are a measure of visibility, not of exposure to that specific attack.&lt;/p&gt;

&lt;p&gt;What the numbers do support is a narrower and more useful claim. Estonia maintains a substantial, externally observable public-sector attack surface, and the September incidents show that parts of it are attractive targets. That combination is enough to justify routine external measurement as part of operational hygiene, without overstating what any single figure proves.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where ZoomEye fits
&lt;/h2&gt;

&lt;p&gt;ZoomEye is built for this kind of enumeration. It indexes asset attributes that matter for scoping — country, industry, service, port, certificate content and page titles — and it returns counts that can be compared over time.&lt;/p&gt;

&lt;p&gt;For an organisation that has just been through an availability incident, that capability translates into a concrete question: which of the assets visible today were visible last month, and which of them have an owner?&lt;/p&gt;

&lt;p&gt;Answering that is not a substitute for incident response. It is the groundwork that makes the next response faster.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Riigi Infosüsteemi Amet, “September küberruumis: andmelekked ja häired riigi e-teenustes”, &lt;a href="https://ria.ee/uudised/september-kuberruumis-andmelekked-ja-haired-riigi-e-teenustes" rel="noopener noreferrer"&gt;https://ria.ee/uudised/september-kuberruumis-andmelekked-ja-haired-riigi-e-teenustes&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;ZoomEye, &lt;a href="https://www.zoomeye.ai/" rel="noopener noreferrer"&gt;https://www.zoomeye.ai/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ZoomEye Query Notes
&lt;/h2&gt;

&lt;p&gt;All counts were collected on 2026-10-14 UTC with &lt;code&gt;sub_type=all&lt;/code&gt;. Queries and results:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Query&lt;/th&gt;
&lt;th&gt;Matching assets&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;country="EE" &amp;amp;&amp;amp; industry="government"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;263&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;country="EE" &amp;amp;&amp;amp; service="https" &amp;amp;&amp;amp; is_domain=true&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;21,335&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;country="EE" &amp;amp;&amp;amp; port="443"&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;135,740&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Matches are internet-visible observations at query time. They are not confirmed vulnerable, exploited or compromised systems, and the counts are not additive.&lt;/p&gt;

</description>
      <category>security</category>
      <category>zoomeye</category>
      <category>exposuremanagement</category>
      <category>ddos</category>
    </item>
    <item>
      <title>Why I Dig Into Cybersecurity and Hands-On Tech</title>
      <dc:creator>facilishz</dc:creator>
      <pubDate>Wed, 14 Oct 2026 07:32:36 +0000</pubDate>
      <link>https://dev.to/facilishz/why-i-dig-into-cybersecurity-and-hands-on-tech-12j</link>
      <guid>https://dev.to/facilishz/why-i-dig-into-cybersecurity-and-hands-on-tech-12j</guid>
      <description>&lt;p&gt;This is my first entry. I’ve long been drawn to IT and cybersecurity, spending much of my free time tinkering with networks and systems. I don’t just study theory; I like to set up test environments, trace traffic, and see how different components interact under the hood. Every small experiment teaches me something new about how digital systems operate.&lt;/p&gt;

&lt;p&gt;I plan to use this space to document my hands-on work. Expect technical notes, troubleshooting stories, and observations from my lab setups. Some projects will succeed, others will break entirely — and those failures are often the most valuable lessons.&lt;/p&gt;

&lt;p&gt;My goal is simple: keep learning, keep experimenting, and share what I find along the way.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>cybersecurity</category>
      <category>learning</category>
      <category>networking</category>
    </item>
  </channel>
</rss>
