Cyber security

Karton-Pcap-Miner: Streamlining Network Indicator Extraction from PCAPs

Karton-Pcap-Miner is a strong program that quickly pulls network indicators from analysis PCAP files.” It works with MWDB without any problems to add these indicators as attributes, which makes cybersecurity research better. You can use it with complicated network data because it has tools for HTTP, TCP, SNI, and DNS built in. Professionals who want to speed up the processes of network analysis and signal extraction must have this tool.

Extract network indicators from analysis PCAPs and add push them to MWDB as attributes.

Example analysis results in MWDB

Prerequisites

  • tshark (apt install tshark)
  • karton-core

Built-in analyzers

  • http
    • contacted http(s) URLs, example: http://305friend.caesarsgroup.top/_errorpages/305friend/five/fre.php
  • tcp
    • contacted tcp hosts (including destination port), example: 104.21.1.61:80
  • sni
    • server names extracted from TLS handshakes (including destination port), example: 305friend.caesarsgroup.top:443
  • dns
    • DNS queries, example: 305friend.caesarsgroup.top

Configuration

The default configuration uses the following configuration. You should modify it to suit your own instance if you’re deploying the services on your own infrastructure.

[pcap-miner]
vm_ip_range=10.0.0.0/8
max_results=24
ignore_list=

Read the karton documentation to learn how to configure services in your own deployment.

VM IP range

Set the vm_ip_range value to specify the range of IP addresses used by VMs. This is used to detect the outgoing direction in network connections.

Max results

Some samples may purposely generate a huge number of TCP/DNS connections. The max_results configures the maximum number of results reported for a given analyzer. If The number exceeds the configured value, no values are reported at all. Set to -1 to always report all results.

Indicator ignorelist

In some cases you don’t really want to report some of the indicators that come up in almost all PCAPs. Things like OCSP, UPNP, telemetry appears very frequently and doesn’t provide any analytic value per se.

You can configure the ignored values for each analyzer using the ignore_list configuration value. It should point to a JSON file containing the excluded values:

{
    "network-http": ["http://239.255.255.250:1900*","http://[FF02::C]:1900*"],
    "network-tcp": [],
    "network-sni": ["google.com:443"],
    "network-dns": ["teredo.ipv6.microsoft.com","isatap","dns.msftncsi.com","wpad"]
}
Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Bash Scripting Best Practices Every Beginner Should Know

Introduction Bash scripting is a powerful way to automate Linux tasks, but writing a script…

23 hours ago

How To Create A Self-Signed SSL Certificate Using Bash And OpenSSL

Introduction A self-signed SSL certificate is a certificate that is created and signed by the…

1 day ago

How To Debug Bash Scripts Using bash -x And set Commands

Introduction Debugging is an important part of Bash scripting. When a script does not work…

1 day ago

How To Use Cron Jobs With Bash Scripts For Automation

Introduction Cron jobs are used in Linux to run commands or Bash scripts automatically at…

1 day ago

How To Use Pipes In Bash Scripts For Command Chaining

Introduction Pipes are an important feature in Linux and Bash scripting. A pipe allows you…

1 day ago

How To Use grep, awk, And sed In Bash Scripts

Introduction The grep, awk, and sed commands are powerful text-processing tools in Linux. They are…

1 day ago