Mehyar Belal


Cyber Security Analyst - Threat Detection - Threat Detection & Blue Team Focused



About Me

Mehyar Belal

I'm a Cyber Security Analyst working across SOC operations, threat detection, and blue team tooling. My background includes a Master’s in Cybersecurity from Monash University and hands-on experience building a defensive lab environment to simulate and detect real-world threats.

I work with tools like Splunk, Snort, Wazuh, Nessus, and OWASP ZAP, applying frameworks such as MITRE ATT&CK and CVSS to guide investigations, triage alerts, and tune detections for better accuracy.

This site showcases practical case studies, detection writeups, and blue team strategies I've used both in the lab and real-world scenarios.






Cybersecurity Case Studies

Home SOC Lab

πŸ›‘οΈ Network Intrusion Detection (Snort + Splunk)


Summary: I configured Snort in IDS mode on my Ubuntu VM to detect suspicious network activity, including port scans and malicious traffic. I ensured Snort runs automatically at startup, integrated alerts with Splunk for centralized log analysis, and validated detections using real-world scans.

Skills: Network Security, IDS Configuration, Log Analysis, SIEM Integration, Linux Service Management
Tools: Snort, Splunk, Nmap, Ubuntu, tcpdump

πŸ” Discovery

I installed Snort in IDS mode and configured it to monitor enp0s3, the primary external interface on my Ubuntu VM. I confirmed that Snort was logging to /var/log/snort/alert and actively inspecting live packets.

πŸ§ͺ Investigation

I launched a stealth TCP SYN scan using nmap -sS targeting port 80 of the same VM to simulate a reconnaissance attempt. Snort successfully triggered the local rule I wrote to detect any TCP SYN packet:

I simulated a reconnaissance attack by launching a stealth TCP SYN scan using nmap from a separate machine:


nmap -sS -Pn -p 80 192.168.1.100

This scan targeted port 80 of the Snort-monitored VM. The scan triggered the custom local rule I wrote to detect any TCP SYN packet directed to any host or port. The detection appeared in the console and was also forwarded to Splunk:

Screenshot – Snort Live Console:

Snort Alert in Console

Screenshot – Alert Triggered in Splunk:

Splunk showing Snort alert

βš™οΈ Automation

I created a systemd service to run Snort in daemon mode at boot:


[Unit]
Description=Snort IDS Daemon
After=network.target

[Service]
ExecStart=/usr/sbin/snort -c /etc/snort/snort.conf -i enp0s3 -D
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure

[Install]
WantedBy=multi-user.target

Commands used:


sudo cp snort.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable snort
sudo systemctl start snort

πŸ“‘ Splunk Integration

I installed the Splunk Universal Forwarder and configured it to monitor /var/log/snort/alert. Snort alerts were forwarded in real-time to my Splunk instance for centralized monitoring.

βœ… Outcome

This lab demonstrated my ability to configure and automate a real intrusion detection system, write custom rules, simulate attacks, and integrate with a SIEM for alert monitoring β€” key skills for SOC roles and real-world threat detection.

Splunk Labs

πŸ›‘οΈ NXDOMAIN Attack (DNS Enumeration) - Splunk


Summary: I detected an NXDOMAIN attack using Splunk and the BOTSV3 dataset. The attack involved querying non-existent subdomains on the brewertalk.com domain, triggering NXDOMAIN responses. This is a typical DNS enumeration attack aimed at discovering subdomains and potentially identifying vulnerable infrastructure.

Skills: DNS Enumeration, Splunk Log Analysis, Threat Detection, Network Security
Tools: Splunk, BOTSV3 Dataset, Nslookup, Nmap, Linux

πŸ” Discovery

Using the BOTSV3 dataset in Splunk, I identified multiple NXDOMAIN responses triggered by DNS queries for non-existent subdomains under brewertalk.com. These queries were logged with the IP addresses that initiated the requests.

Splunk Search Query:


index=botsv3 sourcetype=aws:cloudwatchlogs "NXDOMAIN" 
| stats count by src_ip
| where count > 10
        

This search identified IP addresses that made more than 10 DNS queries in a short time period, which is indicative of a DNS enumeration attack. The IP addresses involved were flagged for further investigation.

Screenshot – Splunk Search Results for NXDOMAIN Attack:

πŸ§ͺ Investigation

The attack was identified through a pattern of repeated DNS queries for subdomains that do not exist (NXDOMAIN responses). I noticed several queries for non-existent subdomains, such as:


users1.brewertalk.com AAAA NXDOMAIN
ccmail.brewertalk.com AAAA NXDOMAIN
koko10.brewertalk.com A NXDOMAIN
        

These queries triggered NXDOMAIN responses, indicating that the attacker was attempting to gather information about the structure of the domain, potentially looking for valid subdomains or services by forcing NXDOMAIN errors.

I used the **Splunk logs** to look for patterns that showed multiple NXDOMAIN responses coming from the same IP addresses in a short time window. The IPs involved were:


src_ip       | count
52.78.247.225 | 7
13.209.8.105  | 5
13.209.43.220 | 6
        

These IP addresses initiated multiple queries for non-existent subdomains within a brief time frame, a common characteristic of **DNS enumeration** or **reconnaissance attacks**. The attacker is likely trying to find subdomains and test for misconfigured or vulnerable DNS records.

βš™οΈ Mitigation

To mitigate this attack, I blocked the suspicious IP addresses using the UFW (Uncomplicated Firewall) on the target server to prevent further queries from these attackers.


sudo ufw deny from 52.78.247.225
sudo ufw deny from 13.209.8.105
sudo ufw deny from 13.209.43.220
        

βœ… Outcome

This lab demonstrated how to detect NXDOMAIN attacks using Splunk and the BOTSV3 dataset. By identifying the suspicious IPs, blocking them with a firewall, and preventing further DNS queries, I successfully mitigated the attack. This lab also showcased the importance of monitoring DNS traffic to prevent such attacks.



Get in Touch





Crafted with passion by Mehyar Belal Β© 2025