<?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>Security Forem: Akuson Daniel</title>
    <description>The latest articles on Security Forem by Akuson Daniel (@akuson).</description>
    <link>https://zeroday.forem.com/akuson</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3033383%2F3db3f69a-880b-4922-b9b6-bf58106f3e97.png</url>
      <title>Security Forem: Akuson Daniel</title>
      <link>https://zeroday.forem.com/akuson</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://zeroday.forem.com/feed/akuson"/>
    <language>en</language>
    <item>
      <title>Linux Server Infrastructure Lab</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Fri, 23 Jan 2026 15:56:51 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/linux-server-infrastructure-lab-22p4</link>
      <guid>https://zeroday.forem.com/akuson/linux-server-infrastructure-lab-22p4</guid>
      <description>&lt;p&gt;&lt;strong&gt;Project:Linux Server Infrastructure Lab&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Environment: Ubuntu 24.04 LTS | VirtualBox | Windows 11 (Host)&lt;/p&gt;

&lt;p&gt;Objective: From Bare Metal Installation to Remote Secure Management.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Phase 1: Provisioning &amp;amp; OS Architecture *&lt;/em&gt;&lt;br&gt;
The foundation was built by moving away from the "Desktop" mindset to a "Server" mindset.&lt;/p&gt;

&lt;p&gt;Hypervisor Setup: Configured VirtualBox with optimized settings (2GB RAM, 2 CPUs) and enabled Hardware Virtualization (VT-x/SVM).&lt;/p&gt;

&lt;p&gt;Minimalist OS Install: Deployed Ubuntu Server 24.04 LTS using LVM (Logical Volume Management) for flexible disk scaling.&lt;/p&gt;

&lt;p&gt;The Shell Environment: Mastered the Linux Filesystem Hierarchy (/, /etc, /home).&lt;/p&gt;

&lt;p&gt;Key Skills:&lt;/p&gt;

&lt;p&gt;File CRUD operations (mkdir, touch, rm).&lt;/p&gt;

&lt;p&gt;System updates and package management via apt.&lt;/p&gt;

&lt;p&gt;Terminal navigation and text editing via nano.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Phase 2: Networking &amp;amp; The Remote "Bridge" *&lt;/em&gt;&lt;br&gt;
In this phase, I transitioned from local console access to a professional remote workflow.&lt;/p&gt;

&lt;p&gt;Network Refactoring: Migrated from NAT to a Bridged Adapter to give the server a unique identity on the local network (LAN).&lt;/p&gt;

&lt;p&gt;Remote Access (SSH): Established a secure encrypted tunnel from Windows PowerShell to the Linux server.&lt;/p&gt;

&lt;p&gt;Network Troubleshooting: Used 'ip addr' for discovery and ping for connectivity verification.&lt;br&gt;
*&lt;em&gt;Phase 3: Hardening &amp;amp; Security *&lt;/em&gt;&lt;br&gt;
A server is only as good as its defense. I implemented "Zero-Trust" principles for the lab.&lt;/p&gt;

&lt;p&gt;Firewall Configuration (UFW): Implemented a "Deny-by-Default" policy.&lt;/p&gt;

&lt;p&gt;Strategically allowed SSH traffic to prevent remote lockout.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6na0mmy0s31axxle5eet.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6na0mmy0s31axxle5eet.png" alt=" " width="390" height="214"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Identity &amp;amp; Access Management (IAM): Created secondary user accounts (junior).&lt;/p&gt;

&lt;p&gt;Managed administrative privileges via the sudo group.&lt;/p&gt;

&lt;p&gt;The Linux Permissions Model: Deciphered the drwxrwxr-x permission strings.&lt;/p&gt;

&lt;p&gt;Mastered Ownership Handover (chown) and Numerical Permissions (chmod).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4umnm11of5mcgkmdqfvf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4umnm11of5mcgkmdqfvf.png" alt=" " width="586" height="99"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example: Utilized chmod 400 to create "Read-Only Vaults" for sensitive system files.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phase 4: System Observability &amp;amp; Metrics (Current)&lt;/strong&gt;&lt;br&gt;
Monitoring the "Health" of the server to ensure uptime and performance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2kqti4qjav8welm6687m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2kqti4qjav8welm6687m.png" alt=" " width="800" height="596"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Live Metrics: Utilized htop for real-time CPU and RAM visualization.&lt;/p&gt;

&lt;p&gt;Storage Auditing: Used df -h to monitor disk consumption and prevent system crashes due to full volumes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5hy0snen8tiqo3hbpr5o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5hy0snen8tiqo3hbpr5o.png" alt=" " width="772" height="186"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Session Auditing: Used last and history to track user activity and system changes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faruq7horzdgbcvpjvx0i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faruq7horzdgbcvpjvx0i.png" alt=" " width="754" height="273"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>cli</category>
      <category>linux</category>
      <category>tutorial</category>
      <category>ubuntu</category>
    </item>
    <item>
      <title>Fintech Transaction Monitoring &amp; Fraud Detection Using Splunk</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Wed, 21 Jan 2026 09:45:52 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/fintech-transaction-monitoring-fraud-detection-using-splunk-3l99</link>
      <guid>https://zeroday.forem.com/akuson/fintech-transaction-monitoring-fraud-detection-using-splunk-3l99</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5m0ds5t3mmu71wxny3ig.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5m0ds5t3mmu71wxny3ig.JPG" alt=" " width="800" height="335"&gt;&lt;/a&gt;&lt;strong&gt;In this lab, I simulated a Nigerian fintech and Banks platform with 5,000+ realistic transaction events and use i Splunk to monitor transactions,detect fraud, and perform business analytics&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;N.B The Values used are randomized.&lt;/p&gt;

&lt;h2&gt;
  
  
  Splunk is widely used in:
&lt;/h2&gt;

&lt;p&gt;*Security Operations (SOC)&lt;br&gt;
*Business analytics&lt;br&gt;
*Fintech monitoring&lt;/p&gt;

&lt;p&gt;By completing this lab, I demonstrated:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Realistic data ingestion&lt;/li&gt;
&lt;li&gt;Fraud detection &amp;amp; KPI tracking&lt;/li&gt;
&lt;li&gt;Executive dashboard creation&lt;/li&gt;
&lt;li&gt;SPL (Search Processing Language) skills.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;DATASET OVERVIEW&lt;/strong&gt;&lt;br&gt;
I generated 5,000 events with 10 Financial Institutions event types&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Event Type                Description
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;| PAYMENT_SUCCESS      | Payment completed successfully  |&lt;br&gt;
| PAYMENT_FAILED       | Payment failed                  |&lt;br&gt;
| LOGIN_SUCCESS        | Successful login                |&lt;br&gt;
| LOGIN_FAILED         | Failed login attempt            |&lt;br&gt;
| OTP_SENT             | One-time password sent          |&lt;br&gt;
| OTP_FAILED           | OTP verification failed         |&lt;br&gt;
| KYC_SUBMITTED        | Know Your Customer submitted    |&lt;br&gt;
| KYC_APPROVED         | KYC approved                    |&lt;br&gt;
| KYC_REJECTED         | KYC rejected                    |&lt;br&gt;
| WALLET_FUNDED        | Wallet funding                  |&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fields included&lt;/strong&gt;:&lt;br&gt;
&lt;code&gt;user_id&lt;/code&gt;, &lt;code&gt;event_type&lt;/code&gt;, &lt;code&gt;amount&lt;/code&gt;, &lt;code&gt;bank&lt;/code&gt;, &lt;code&gt;location&lt;/code&gt;, &lt;code&gt;device&lt;/code&gt;, &lt;code&gt;channel&lt;/code&gt;, &lt;code&gt;status&lt;/code&gt;, `timestamp'&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Generate the Dataset
&lt;/h2&gt;

&lt;p&gt;I used &lt;strong&gt;Python and VS Code&lt;/strong&gt; to generate the dataset. Here’s the script:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;`&lt;/p&gt;

&lt;p&gt;`&lt;code&gt;&lt;/code&gt;python&lt;br&gt;
import json&lt;br&gt;
import random&lt;br&gt;
from datetime import datetime, timedelta&lt;/p&gt;

&lt;p&gt;events = [&lt;br&gt;
    "PAYMENT_SUCCESS","PAYMENT_FAILED",&lt;br&gt;
"LOGIN_SUCCESS","LOGIN_FAILED",&lt;br&gt;
    "OTP_SENT","OTP_FAILED",&lt;br&gt;
    "KYC_SUBMITTED","KYC_APPROVED","KYC_REJECTED",&lt;br&gt;
    "WALLET_FUNDED"&lt;br&gt;
]&lt;/p&gt;

&lt;p&gt;banks = ["GTB","Access","Zenith","UBA","Kuda","Opay"]&lt;br&gt;
locations = ["Lagos","Abuja","Ibadan","PH","Benin"]&lt;br&gt;
devices = ["Android","iPhone","Web"]&lt;br&gt;
channels = ["MobileApp","USSD","Web"]&lt;/p&gt;

&lt;p&gt;start_time = datetime(2025, 1, 1)&lt;/p&gt;

&lt;p&gt;with open("fintech_5000.json", "w") as f:&lt;br&gt;
    for i in range(5000):&lt;br&gt;
        event = random.choice(events)&lt;br&gt;
        log = {&lt;br&gt;
            "event_type": event,&lt;br&gt;
            "user_id": f"U{random.randint(1000, 4000)}",&lt;br&gt;
            "amount": random.choice([0,5000,10000,20000,50000]),&lt;br&gt;
            "bank": random.choice(banks),&lt;br&gt;
            "location": random.choice(locations),&lt;br&gt;
            "device": random.choice(devices),&lt;br&gt;
            "channel": random.choice(channels),&lt;br&gt;
            "status": "FAILED" if "FAILED" in event else "SUCCESS",&lt;br&gt;
            "timestamp": (start_time + timedelta(seconds=i)).isoformat()&lt;br&gt;
        }&lt;br&gt;
        f.write(json.dumps(log) + "\n")&lt;br&gt;
print("fintech_5000.json generated successfully")&lt;/p&gt;

&lt;h2&gt;
  
  
  step 2 : I Uploaded My Randomized Values using a Python Script in VS Code.
&lt;/h2&gt;

&lt;p&gt;Upload Data to Splunk&lt;br&gt;
Go to Splunk Home → Add Data → Upload&lt;br&gt;
Select fintech_5000.json&lt;br&gt;
Configure:&lt;br&gt;
_Sourcetype: _json&lt;br&gt;
_Index: main (or allowed index)&lt;br&gt;
_Timestamp extraction: timestamp&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;`&lt;br&gt;
index=main | stats count&lt;/p&gt;

&lt;p&gt;`&lt;code&gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F743rxjnab8oj2hq2dmc1.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F743rxjnab8oj2hq2dmc1.JPG" alt=" " width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;`&lt;/p&gt;

</description>
      <category>splunk</category>
      <category>cybersecurity</category>
      <category>fintech</category>
      <category>analytics</category>
    </item>
    <item>
      <title>That Harmless QR Code Could Be Your Next Breach.</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Fri, 10 Oct 2025 13:13:07 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/that-harmless-qr-code-could-be-your-next-breach-59dd</link>
      <guid>https://zeroday.forem.com/akuson/that-harmless-qr-code-could-be-your-next-breach-59dd</guid>
      <description>&lt;p&gt;The Silent Cyber Threat Hiding in Plain Sight&lt;br&gt;
What is Quishing?&lt;/p&gt;

&lt;p&gt;Quishing(QR Code + Phishing) is a sophisticated social engineering attack where cybercriminals use malicious QR codes to trick victims into revealing sensitive information, downloading malware, or accessing fraudulent websites.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwoe0gkgzdocx3pxrn34.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwoe0gkgzdocx3pxrn34.jpeg" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;How Quishing Works: The Attack Lifecycle&lt;/p&gt;

&lt;p&gt;Attackers distribute malicious QR codes through various channels:&lt;br&gt;
Email campaigns: Fake invoices, package delivery notifications, or urgent security alerts&lt;br&gt;
Physical locations: Parking meters, restaurant tables, posters, or stickers placed over legitimate QR codes&lt;br&gt;
Social media: Promotional offers, event registrations, or cryptocurrency giveaways&lt;/p&gt;

&lt;p&gt;Urgency: "Your account will be locked in 24 hours—scan to verify"&lt;br&gt;
Greed: "Exclusive discount—scan for 50% off!"&lt;br&gt;
Fear: "Parking violation—scan to avoid fine"&lt;br&gt;
Curiosity: "Scan to reveal your surprise gift"&lt;/p&gt;

&lt;p&gt;Once the victim scans the malicious QR code:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Credential Harvesting: Redirects to fake login pages mimicking legitimate services (Microsoft 365, banking portals, corporate SSO)
2.Malware Download: Initiates automatic download of spyware, ransomware, or remote access trojans
3.Payment Fraud Redirects to fraudulent payment portals or cryptocurrency wallets
4.Session Hijacking Steals authentication tokens or session cookies&lt;/li&gt;
&lt;li&gt;MFA Bypass Uses real-time phishing to intercept multi-factor authentication codes&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;How to Protect Yourself and Your Organization&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Before Scanning:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Verify the source—is the QR code from a legitimate sender?&lt;/li&gt;
&lt;li&gt;Check for tampering on physical QR codes (stickers over originals)&lt;/li&gt;
&lt;li&gt;Be skeptical of urgent or unexpected QR codes&lt;/li&gt;
&lt;li&gt;Never scan QR codes from unsolicited emails or texts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After Scanning:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Preview the URL before proceeding&lt;/li&gt;
&lt;li&gt;Verify the domain matches the expected organization&lt;/li&gt;
&lt;li&gt;Look for HTTPS and valid certificates&lt;/li&gt;
&lt;li&gt;Never enter credentials if something feels off&lt;/li&gt;
&lt;li&gt;Use QR scanner apps that show URLs before opening&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;General Practices:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Keep mobile devices updated with latest security patches&lt;/li&gt;
&lt;li&gt;Install reputable mobile security software&lt;/li&gt;
&lt;li&gt;Enable device encryption and screen locks&lt;/li&gt;
&lt;li&gt;Avoid scanning QR codes on public WiFi&lt;/li&gt;
&lt;li&gt;Manually type URLs for sensitive transactions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For Organizations:&lt;/p&gt;

&lt;p&gt;Technical Controls:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Email Security Enhancement&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deploy advanced email security solutions with image analysis capabilities&lt;/li&gt;
&lt;li&gt;Enable QR code detection and sandboxing&lt;/li&gt;
&lt;li&gt;Quarantine emails containing QR codes from external senders&lt;/li&gt;
&lt;li&gt;Implement zero-trust architecture for mobile devices&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Endpoint Protection&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Enforce mobile device management (MDM) policies&lt;/li&gt;
&lt;li&gt;Require mobile threat defense (MTD) solutions&lt;/li&gt;
&lt;li&gt;Implement mobile application management (MAM)&lt;/li&gt;
&lt;li&gt;Block access from jailbroken/rooted devices&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Network Security&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Monitor for suspicious mobile device connections&lt;/li&gt;
&lt;li&gt;Implement DNS filtering to block known malicious domains&lt;/li&gt;
&lt;li&gt;Use network access control (NAC) for mobile devices&lt;/li&gt;
&lt;li&gt;Segment networks to limit mobile device access&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;As we increasingly rely on QR codes for convenience, we must remain vigilant about their security implications. Quishing represents a perfect storm: a trusted technology, minimal security awareness, and sophisticated attack techniques.&lt;/p&gt;

&lt;p&gt;Remember: Convenience should never come at the cost of security. A two-second pause to verify a QR code could save you from a devastating breach.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Directory Brute Force (Discovering hidden directories and files in a web application)</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Wed, 23 Jul 2025 09:36:35 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/directory-brute-force-discovering-hidden-directories-and-files-in-a-web-application-22gn</link>
      <guid>https://zeroday.forem.com/akuson/directory-brute-force-discovering-hidden-directories-and-files-in-a-web-application-22gn</guid>
      <description>&lt;p&gt;Directory enumeration is a technique used during reconnaissance to discover hidden files and folders on a web server. It helps identify entry points, backup files, configuration folders or vulnerable scripts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Objective&lt;/strong&gt;: Discover hidden directories and files in a web application.&lt;br&gt;
&lt;strong&gt;Target&lt;/strong&gt;: &lt;a href="http://www.vulnweb.com/" rel="noopener noreferrer"&gt;Vulnweb&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I made use of &lt;strong&gt;Dirb&lt;/strong&gt; tool to run a Directory Brute force on &lt;strong&gt;Vulneweb&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;DIRB (short for Directory Buster) is a command-line web content scanner used to brute-force directories and files on web servers. It helps you discover hidden content that’s not linked on the site. &lt;/p&gt;

&lt;p&gt;I used the command prompt &lt;code&gt;sudo apt install Dirb&lt;/code&gt; on my Virtual Machine.&lt;br&gt;
After Brute Forcing, I discovered 8 Directories.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I used the command prompt “sudo apt install Dirb” on my Virtual Machine.&lt;/li&gt;
&lt;li&gt;Ran this basic scan &lt;code&gt;dirb http://testphp.vulnweb.com/&lt;/code&gt; This uses the default wordlist included  with dirb.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhgvy7itpw03debcqmsb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhgvy7itpw03debcqmsb.png" alt=" " width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mitigation&lt;/strong&gt;:&lt;br&gt;
A. Avoid Predictable Directory Names: Avoid using guessable paths e.g &lt;code&gt;/ admin12/&lt;/code&gt;&lt;br&gt;
B. Use Authentication and Authorization to protect sensitive directories (like &lt;code&gt;/admin&lt;/code&gt;, &lt;code&gt;/config&lt;/code&gt;) using: Basic Authentication JWT or session-based authentication.&lt;br&gt;
C. Rate Limiting &amp;amp; IP Blocking&lt;br&gt;
Prevent brute force by limiting how fast clients can send requests using a WAF for example Cloudflare.&lt;br&gt;
D. Custom 403/404 Responses&lt;br&gt;
Don’t reveal what exists or not Return the same error page and response time whether the directory exists or not, avoid error messages that say "Directory listing for /admin found" &lt;/p&gt;

&lt;p&gt;While trying to Brute Force the Directory, I encountered a few error(RECV ERROR) which wasn’t letting me view the Admin Directory in Vulnweb. I Had to create an admin Directory in order to query my Target(Vulnweb) Directory. When working sometimes you encounter errors along the line.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>cli</category>
      <category>tutorial</category>
      <category>tooling</category>
    </item>
    <item>
      <title>Discover hidden directories and files in a web application.</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Wed, 25 Jun 2025 14:04:52 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/discover-hidden-directories-and-files-in-a-web-application-1oai</link>
      <guid>https://zeroday.forem.com/akuson/discover-hidden-directories-and-files-in-a-web-application-1oai</guid>
      <description>&lt;p&gt;Directory enumeration is a technique used during reconnaissance to discover hidden files and folders on a web server. It helps identify entry points, backup files, configuration folders or vulnerable scripts. &lt;br&gt;
As part of a basic penetration testing reconnaissance phase, I conducted a content discovery scan on the publicly available web application hosted at &lt;a href="http://testphp.vulnweb.com" rel="noopener noreferrer"&gt;http://testphp.vulnweb.com&lt;/a&gt;. The purpose of this test was to identify hidden directories and files that may not be linked directly within the application but could be accessed if known. Such content often includes administrative panels, backup folders, development files, or version control systems that may pose security risks if improperly configured.&lt;/p&gt;

&lt;p&gt;Using the DIRB tool on Kali Linux, I executed the scan with the standard common.txt wordlist provided by the tool. The command used was: "scan dirb &lt;a href="http://testphp.vulnweb.com/" rel="noopener noreferrer"&gt;http://testphp.vulnweb.com/&lt;/a&gt;"&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyk4zakpdpnnll2m7ltbs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyk4zakpdpnnll2m7ltbs.png" alt=" " width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The scan successfully identified several directories and files that could be of interest from a security standpoint. Notably, the /admin/ directory exists but returns a 403 Forbidden response, suggesting that it may be protected or restricted, but its presence alone may invite further brute-force or access control testing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Security Findings
&lt;/h2&gt;

&lt;p&gt;Presence of /admin/ directory (403 Forbidden): Suggests an administrative interface which, if brute-forced or misconfigured, could allow unauthorized access to sensitive functionality.&lt;/p&gt;

&lt;p&gt;Version control leak in /CVS/ folder: Reveals internal project structure and versioning information. These folders should not be publicly exposed in any live web environment.&lt;/p&gt;

&lt;p&gt;Access to /secured/ folder: Despite the name implying restricted access, the directory is accessible and may require a deeper review to verify the sensitivity of its contents.&lt;/p&gt;

&lt;p&gt;Exposed /vendor/ folder: Could reveal application dependencies and open up supply-chain or known-vulnerability exploits if directory listing is enabled.&lt;/p&gt;

&lt;h2&gt;
  
  
  Mitigations:
&lt;/h2&gt;

&lt;p&gt;1-Avoid Predictable Directory Names: Avoid using guessable paths e.g / admin12/&lt;br&gt;
2-Use Authentication and Authorization to protect sensitive directories (like /admin, /config) using: Basic Authentication JWT or session-based authentication.&lt;br&gt;
3-Rate Limiting &amp;amp; IP Blocking: Prevent brute force by limiting how fast clients can send requests using a WAF for example Cloudflare.Custom 403/404 Responses&lt;br&gt;
4-Don’t reveal what exists or not Return the same error page and response time whether the directory exists or not, avoid error messages that say "Directory listing for /admin found" &lt;/p&gt;

</description>
    </item>
    <item>
      <title>Perform basic reconnaissance to gather domain-related information using Vulnerable Web.</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Wed, 25 Jun 2025 13:42:27 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/perform-basic-reconnaissance-to-gather-domain-related-information-using-vulnerable-web-48n1</link>
      <guid>https://zeroday.forem.com/akuson/perform-basic-reconnaissance-to-gather-domain-related-information-using-vulnerable-web-48n1</guid>
      <description></description>
      <category>cybersecurity</category>
      <category>vulnerabilities</category>
      <category>testing</category>
    </item>
    <item>
      <title>Perform basic reconnaissance to gather domain-related information using Vulnerable Web.</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Sun, 22 Jun 2025 16:30:42 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/perform-basic-reconnaissance-to-gather-domain-related-information-using-vulnerable-web-150</link>
      <guid>https://zeroday.forem.com/akuson/perform-basic-reconnaissance-to-gather-domain-related-information-using-vulnerable-web-150</guid>
      <description>&lt;p&gt;Reconnaissance is discovering and collecting information on the system and the victim. The reconnaissance phase is the planning phase for the adversaries.&lt;br&gt;
In Ethical Hacking, Information gathering whereby Black Hat hackers, Hacktivists or white  Hat Hackers gather Information about a web service. Even SOC analyst make use of this tool for either active or passive attacks surface level like open ports, services running, software versions, domain info, and network structure, used to spot potential Loopholes in a domain name system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Objectives;
&lt;/h2&gt;

&lt;p&gt;1-Identify Vulnerabilities&lt;br&gt;
2-Get Footprints for Social Engineering&lt;br&gt;
3-Planning Attack or Defenses.&lt;/p&gt;

&lt;h2&gt;
  
  
  Target: vulnweb.com
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Tools Used: Whois, Nslookup.
&lt;/h2&gt;

&lt;p&gt;Steps to Reproduce &lt;/p&gt;

&lt;p&gt;Run Basic whois Lookup using Linux Operating System with the command “whois vulneweb.com" The Following were outputted;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frbn3gc50cygfqorrhd3f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frbn3gc50cygfqorrhd3f.png" alt=" " width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;i-Domain Name Registration&lt;br&gt;
ii-Date the target website (Vulnweb) was created and its Expiry date&lt;br&gt;
iii- Domain Headers &lt;br&gt;
iv- DNS points to a live server.&lt;/p&gt;

&lt;p&gt;I went further to query Vulnweb. Using  Command “nslookup vulnweb.com”&lt;br&gt;
Server: The query was sent to 8.8.8.8 (Google's public DNS server) on port 53.&lt;br&gt;
Non-authoritative Answer: &lt;br&gt;
Name: vulnweb.com&lt;br&gt;
Address: 44.228.249.3 (IPv4 address)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl43m616n7z940qmtkcjz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl43m616n7z940qmtkcjz.png" alt=" " width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Observations:&lt;br&gt;
Primary source for vulnweb.com but is providing a cached or forwarded answer.&lt;br&gt;
The IP address 44.228.249.3 is a valid IPv4 address, indicating vulnweb.com is resolvable and likely hosted on a server at this address.&lt;br&gt;
The use of Google's DNS server suggests the system is configured to use a public DNS resolver rather than a local or ISP-provided one.&lt;br&gt;
This output confirms that vulnweb.com was successfully resolved to an IP address at the time of the query, which could be part of network diagnostics or testing. The domain vulnweb.com is often associated with security testing.&lt;/p&gt;

&lt;p&gt;Here are some few &lt;/p&gt;

&lt;h2&gt;
  
  
  Here are some Mitigation strategies:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Limit Publicly Available Information (OSINT) to mitigate Reconnaissance.&lt;/li&gt;
&lt;li&gt;Block unnecessary ports, use firewalls, and apply network segmentation and Deploy Intrusion Detection Systems.&lt;/li&gt;
&lt;li&gt;Use WHOIS privacy protection with  domain registrar&lt;/li&gt;
&lt;li&gt;Banner grabbing reveals Apache/nginx version to mitigate and turn off or obfuscate version banners.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>cybersecurity</category>
      <category>vulnerabilities</category>
      <category>testing</category>
    </item>
    <item>
      <title>How Browsers &amp; Servers Communicate.</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Thu, 05 Jun 2025 11:06:31 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/how-browser-server-communicate-18kj</link>
      <guid>https://zeroday.forem.com/akuson/how-browser-server-communicate-18kj</guid>
      <description>&lt;p&gt;HTTP headers are the control Language i.e. a medium or channel in which communications happen between BROWSERS &amp;amp; SERVERS on the internet. When you  make a request using a Browser. for example &lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;. The Http Header sends a GET request to the server asking for DATA. The Http now queries the Whole of the internet through DNS(Domain Name System)  to find WWW.example.com. Http Headers are General, Client Request, Server Response and Entity headers.&lt;/p&gt;

&lt;p&gt;In Security,Headers are used to Block Malicious Request from Threat actors through the help of Web Application Firewall.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Web Application Threat Hunting!</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Thu, 29 May 2025 13:54:06 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/web-application-threat-hunting-22ml</link>
      <guid>https://zeroday.forem.com/akuson/web-application-threat-hunting-22ml</guid>
      <description>&lt;p&gt;In web application security, I’ve been exploring Burp Suite Community Edition to understand how attackers think — and how we, as defenders, can protect our systems.&lt;br&gt;
This week, I learned how brute force attacks work using Burp Suite's Intruder tool. In simple terms, brute forcing is when an attacker tries many different username/password combinations until one works.&lt;br&gt;
Here are my Takeaways from This Lab session.&lt;br&gt;
Brute force can flood a server with repeated login attempts — this is dangerous if misused.&lt;br&gt;
It doesn’t harm your own system directly, but it can get your IP blocked if done on live websites.&lt;br&gt;
Testing without permission is illegal and can lead to serious consequences. That's why I used a legal environment (PortSwigger Lab).&lt;br&gt;
I am super excited for the Task ahead in Finding Bugs in a web application&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feywjtbzlfofi11yd52g5.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feywjtbzlfofi11yd52g5.jpg" alt=" " width="800" height="451"&gt;&lt;/a&gt;****&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpahos2qidog17xdwy48j.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpahos2qidog17xdwy48j.jpg" alt=" " width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>app</category>
      <category>security</category>
    </item>
    <item>
      <title>Phising "Most underated but sophisticated form of attacks of all Time"</title>
      <dc:creator>Akuson Daniel</dc:creator>
      <pubDate>Tue, 06 May 2025 09:23:57 +0000</pubDate>
      <link>https://zeroday.forem.com/akuson/phising-most-underated-but-sophisticated-form-of-attacks-of-all-time-25hi</link>
      <guid>https://zeroday.forem.com/akuson/phising-most-underated-but-sophisticated-form-of-attacks-of-all-time-25hi</guid>
      <description>&lt;p&gt;Warm greetings everyone! My day has been quite long, filled with extensive workouts, brainstorming sessions, navigating traffic, and contemplating effective ways to teach non-technical individuals about best practices for protecting their digital assets. Before drafting this post, I envisioned myself addressing a group of people. I got up at 11:30 p.m. and switched to presentation mode. I told them, "Imagine we are in a room together and I enter with a ShihTzu puppy. Each of you would smile and want to play with it because it’s a friendly, playful puppy. However, if I come into the same room with a non-venomous snake, everyone immediately goes on guard. Why? because It’s a snake (an inherent threat to humanity). Every single one of you should always keep in mind the idea of being in a room with “snakes” since, with technology evolving at a constant pace, even the smallest details (footprints on the web) automatically turn into threats. During Events like Black Friday most people have untrained eyes even 'devs' at some point fall for this trick which has been the most efficient form of entry point which can lead to back doors in a targeted system than most people think. Phishing has also been a form of Privilege escalation in recent times where Threat Actors visibly make use of 'Traffic surge' as a major factor when dealing with Non Technical users on the web. These has led to many incidents in the past years.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
