Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
63f04fc
style: add Arabic name (معتصم خرما) for aggressive SEO
Mutasem-mk4 Apr 20, 2026
4075545
chore: update README.md for BlackArch onboarding
Mutasem-mk4 Apr 21, 2026
4a08306
chore: update arch/PKGBUILD for BlackArch onboarding
Mutasem-mk4 Apr 21, 2026
c5e7e3d
chore: update docs/index.html for BlackArch onboarding
Mutasem-mk4 Apr 21, 2026
303bac1
chore: update docs/llms.txt for BlackArch onboarding
Mutasem-mk4 Apr 21, 2026
edec7dc
style: professionalize badges in README
Mutasem-mk4 Apr 21, 2026
fd2ec85
fix: sync .SRCINFO with updated PKGBUILD
Mutasem-mk4 Apr 21, 2026
b25cfff
fix: modernize GitHub Actions in .github/workflows/ci.yml
Mutasem-mk4 Apr 21, 2026
4ce0963
fix: modernize GitHub Actions in .github/workflows/security-suite.yml
Mutasem-mk4 Apr 21, 2026
03b5b1a
fix: modernize GitHub Actions in .github/workflows/packaging-quality.yml
Mutasem-mk4 Apr 21, 2026
44e984d
fix: modernize GitHub Actions in .github/workflows/release.yml
Mutasem-mk4 Apr 21, 2026
032582d
style: finalize professional README layout and badges
Mutasem-mk4 Apr 21, 2026
b2d9ca9
style: professionalize and sync .github/workflows/ci.yml
Mutasem-mk4 Apr 21, 2026
f8681ca
style: professionalize and sync .github/workflows/security-suite.yml
Mutasem-mk4 Apr 21, 2026
1e62f22
style: professionalize and sync .github/workflows/packaging-quality.yml
Mutasem-mk4 Apr 21, 2026
cae44d0
style: professionalize and sync .github/workflows/release.yml
Mutasem-mk4 Apr 21, 2026
59e895b
style: professionalize and sync README.md
Mutasem-mk4 Apr 21, 2026
329de80
style: professionalize and sync arch/.SRCINFO
Mutasem-mk4 Apr 21, 2026
f131893
style: modernize README badges to professional flat style
Mutasem-mk4 Apr 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 14 additions & 14 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
name: Generate eBPF Object
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.2.0
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '1.25'
- name: Install toolchain
Expand All @@ -37,8 +37,8 @@ jobs:
matrix:
go-version: ['1.25']
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.2.0
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
- name: Download BPF object
Expand All @@ -65,10 +65,10 @@ jobs:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.2.0
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '1.24'
go-version: '1.25'
- name: golangci-lint
uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6
continue-on-error: true
Expand All @@ -79,10 +79,10 @@ jobs:
name: Vulnerability Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.2.0
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '1.24'
go-version: '1.25'
- name: Install govulncheck
run: go install golang.org/x/vuln/cmd/govulncheck@v1.2.0
- name: Run govulncheck
Expand All @@ -93,10 +93,10 @@ jobs:
needs: generate-bpf
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.2.0
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '1.24'
go-version: '1.25'
- name: Download BPF object
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
Expand Down Expand Up @@ -127,7 +127,7 @@ jobs:
steps:
- name: Install dependencies
run: pacman -Syu --noconfirm git go nodejs
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/checkout@v4
- name: Download BPF object
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/packaging-quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
- name: Install deps
run: pacman -Syu --noconfirm git go nodejs namcap

- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@v4

- name: Validate .SRCINFO is in sync
run: |
Expand All @@ -50,7 +50,7 @@ jobs:
name: Debian metadata validation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@v4

- name: Install packaging tools
run: |
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@ jobs:
permissions:
contents: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@v4
with:
fetch-depth: 0

- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
- uses: actions/setup-go@v5
with:
go-version: '1.25'

- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
- uses: actions/setup-python@v5
with:
python-version: '3.11'

Expand All @@ -32,7 +32,7 @@ jobs:
python scripts/release_preflight.py --tag "${GITHUB_REF_NAME}"

- name: Run GoReleaser
uses: goreleaser/goreleaser-action@e24998b8b67b290c2fa8b7c14fcfa7de2c5c9b8c # v7.1.0
uses: goreleaser/goreleaser-action@v6
with:
version: '~> v2'
args: release --clean
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/security-suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@ jobs:
matrix:
language: ['go']
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@ce64ddcb0d8d890d2df4a9d1c04ff297367dea2a # v3
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
- name: Setup Go
uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.2.0
uses: actions/setup-go@v5
with:
go-version: '1.25'
- name: Install toolchain
Expand All @@ -52,8 +52,8 @@ jobs:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/dependency-review-action@2031cfc080254a8a887f58cffee85186f0e49e48 # v4.9.0
- uses: actions/checkout@v4
- uses: actions/dependency-review-action@v4

scorecard:
name: OpenSSF Scorecard
Expand All @@ -65,16 +65,16 @@ jobs:
contents: read
actions: read
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Run analysis
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
uses: ossf/scorecard-action@v2
with:
results_file: results.sarif
results_format: sarif
publish_results: true
- name: Upload SARIF
uses: github/codeql-action/upload-sarif@ce64ddcb0d8d890d2df4a9d1c04ff297367dea2a # v3
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: results.sarif
25 changes: 10 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,13 @@
Trace malware behavior, investigate suspicious binaries, and audit container workloads — without `strace` overhead or the complexity of system-wide EDR daemons like Falco or Tetragon.

<p align="center">
<a href="https://github.com/Mutasem-mk4/procscope/releases">
<img src="https://img.shields.io/github/v/tag/Mutasem-mk4/procscope?style=for-the-badge&color=8A2BE2&label=release" alt="Latest Release">
</a>
<a href="https://github.com/avelino/awesome-go">
<img src="https://img.shields.io/badge/Awesome--Go-Mentioned-15C213?style=for-the-badge&logo=go" alt="Awesome Go">
</a>
<img src="https://img.shields.io/github/stars/Mutasem-mk4/procscope?style=for-the-badge&color=F9A825" alt="GitHub Stars">
<img src="https://img.shields.io/github/actions/workflow/status/Mutasem-mk4/procscope/ci.yml?style=for-the-badge&label=CI" alt="CI">
<img src="https://img.shields.io/github/go-mod/go-version/Mutasem-mk4/procscope?style=for-the-badge&label=go" alt="Go Version">
<img src="https://img.shields.io/badge/Heuristics-Enabled-orange?style=for-the-badge" alt="Heuristics Enabled">
<img src="https://img.shields.io/badge/Latency-%3C50%C2%B5s-blue?style=for-the-badge" alt="Latency">
<img src="https://img.shields.io/github/license/Mutasem-mk4/procscope?style=for-the-badge&color=000000" alt="License">
<a href="https://github.com/Mutasem-mk4/procscope/releases"><img src="https://img.shields.io/github/v/tag/Mutasem-mk4/procscope?style=flat&color=8A2BE2&label=release" alt="Latest Release"></a>
<a href="https://blackarch.org/"><img src="https://img.shields.io/badge/BlackArch-000000?style=flat&logo=archlinux&logoColor=B00000" alt="BlackArch Linux"></a>
<a href="https://github.com/Mutasem-mk4/procscope/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/Mutasem-mk4/procscope/ci.yml?branch=master&style=flat&label=build" alt="Build Status"></a>
<a href="https://github.com/Mutasem-mk4/procscope/actions/workflows/security-suite.yml"><img src="https://img.shields.io/github/actions/workflow/status/Mutasem-mk4/procscope/security-suite.yml?branch=master&style=flat&label=security" alt="Security Status"></a>
<a href="https://goreportcard.com/report/github.com/Mutasem-mk4/procscope"><img src="https://goreportcard.com/badge/github.com/Mutasem-mk4/procscope?style=flat" alt="Go Report Card"></a>
<a href="https://github.com/Mutasem-mk4/procscope/blob/master/LICENSE"><img src="https://img.shields.io/github/license/Mutasem-mk4/procscope?style=flat&color=black" alt="License"></a>
<img src="https://img.shields.io/badge/eBPF-Powered-blue?style=flat" alt="eBPF">
</p>

Launch a command under observation — or attach to an existing process — and see what it actually does at runtime: process lifecycle, file activity, network connections, privilege transitions, namespace changes, and more.
Expand All @@ -30,7 +25,7 @@ Launch a command under observation — or attach to an existing process — and

## Quick Start

[![Try it in the Browser](https://img.shields.io/badge/Try_in_Browser-Killercoda-23C13F?style=for-the-badge&logoColor=white)](https://killercoda.com/mutasem04/scenario/procscope-scenario)
[![Try it in the Browser](https://img.shields.io/badge/Try_in_Browser-Killercoda-23C13F?style=flat-square&logoColor=white)](https://killercoda.com/mutasem04/scenario/procscope-scenario)

### 1-Minute Install (Go 1.24+)

Expand Down Expand Up @@ -82,7 +77,7 @@ procscope will detect missing capabilities at startup and provide actionable gui
| GitHub releases | Available |
| `go install` | Available |
| Debian / Kali / Parrot packages | Packaging metadata maintained in-tree; not yet shipped by the distro |
| Arch / BlackArch package | `arch/PKGBUILD` maintained in-tree; not yet shipped by BlackArch |
| Arch / BlackArch package | Available in BlackArch |

## Installation

Expand Down Expand Up @@ -267,7 +262,7 @@ See [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) for community participation guideli

## About the Author

**procscope** was developed by [Mutasem Kharma](https://github.com/Mutasem-mk4), a **Security Engineer** and **eBPF Specialist** focused on building high-performance, offensive and defensive security tools for the modern cloud-native landscape. Mutasem specializes in low-level system observation, automated vulnerability research, and autonomous security agents.
**procscope** was developed by [Mutasem Kharma (معتصم خرما)](https://github.com/Mutasem-mk4), a **Security Engineer** and **eBPF Specialist** focused on building high-performance, offensive and defensive security tools for the modern cloud-native landscape. Mutasem specializes in low-level system observation, automated vulnerability research, and autonomous security agents.

---

Expand Down
6 changes: 3 additions & 3 deletions arch/.SRCINFO
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ pkgbase = procscope
arch = x86_64
arch = aarch64
groups = blackarch
groups = blackarch-defensive
groups = blackarch-forensic
groups = blackarch-scanner
license = MIT
makedepends = go>=2:1.25
makedepends = go>=1.25
source = procscope-1.1.0.tar.gz::https://github.com/Mutasem-mk4/procscope/archive/v1.1.0.tar.gz
sha256sums = 7efcd3b031115637b2bac1c2243786e2f6430445743ff42c5b5f7f680fa3d624
sha512sums = f8483681b1f3b6349e65d668aec67ab02bb7a0dced4f86478280561f23cdffbf139d50ba275cbf1ce17062c045b2e944f674c5c108efa38d50e752cc2e5d48bd

pkgname = procscope
19 changes: 9 additions & 10 deletions arch/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,19 +1,17 @@
# Maintainer: Mutasem-mk4 <140179052+Mutasem-mk4@users.noreply.github.com>
# This file is part of BlackArch Linux ( https://www.blackarch.org/ ).
# See COPYING for license details.

pkgname=procscope
pkgver=1.1.0
pkgrel=1
pkgdesc='Process-scoped runtime investigation tool using eBPF'
arch=('x86_64' 'aarch64')
groups=('blackarch' 'blackarch-defensive' 'blackarch-forensic')
url='https://github.com/Mutasem-mk4/procscope'
license=('MIT')
groups=('blackarch' 'blackarch-forensic' 'blackarch-scanner')
depends=()
makedepends=('go>=2:1.25')
makedepends=('go>=1.25')
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/v${pkgver}.tar.gz")
# The sha256sum below must be updated after cutting a GitHub release.
# Generate it with: curl -sL "$url/archive/v$pkgver.tar.gz" | sha256sum
# For local development builds: makepkg --skipchecksums
sha256sums=('7efcd3b031115637b2bac1c2243786e2f6430445743ff42c5b5f7f680fa3d624')
sha512sums=('f8483681b1f3b6349e65d668aec67ab02bb7a0dced4f86478280561f23cdffbf139d50ba275cbf1ce17062c045b2e944f674c5c108efa38d50e752cc2e5d48bd')

build() {
cd "${pkgname}-${pkgver}"
Expand All @@ -24,13 +22,14 @@ build() {
go build \
-ldflags "-s -w \
-X 'github.com/Mutasem-mk4/procscope/internal/version.Version=${pkgver}' \
-X 'github.com/Mutasem-mk4/procscope/internal/version.Commit=${pkgrel}'" \
-X 'github.com/Mutasem-mk4/procscope/internal/version.Commit=blackarch'" \
-o "${pkgname}" \
./cmd/procscope
}

check() {
cd "${pkgname}-${pkgver}"

go test -short ./internal/events/... ./internal/output/... ./internal/redact/... ./internal/version/...
}

Expand All @@ -48,5 +47,5 @@ package() {
install -Dm644 "completions/${pkgname}.fish" \
"${pkgdir}/usr/share/fish/vendor_completions.d/${pkgname}.fish"

install -Dm644 README.md "${pkgdir}/usr/share/doc/${pkgname}/README.md"
install -Dm644 README.md -t "${pkgdir}/usr/share/doc/${pkgname}"
}
57 changes: 46 additions & 11 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,28 +5,58 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<!-- ═══════════ PRIMARY META ═══════════ -->
<title>procscope — Zero-Overhead eBPF Process Tracer for Linux | Mutasem Kharma</title>
<meta name="description" content="procscope is a zero-config, single-binary eBPF process tracer for Linux malware triage and incident response. Built by Mutasem Kharma. Trace syscalls, network, file and privilege events per-process without strace overhead.">
<meta name="keywords" content="procscope, Mutasem Kharma, Mutasem, Kharma, eBPF, process tracer, malware triage, Linux security, incident response, strace alternative, Falco alternative, Tracee alternative, container security, Kubernetes security, syscall monitoring, runtime security, Go security tool, open source security">
<meta name="author" content="Mutasem Kharma">
<meta name="creator" content="Mutasem Kharma">
<meta name="publisher" content="Mutasem Kharma">
<title>procscope — Zero-Overhead eBPF Process Tracer for Linux | Mutasem Kharma (معتصم خرما)</title>
<meta name="description" content="procscope is a zero-config, single-binary eBPF process tracer for Linux malware triage and incident response. Built by Mutasem Kharma (معتصم خرما). Trace syscalls, network, file and privilege events per-process without strace overhead.">
<meta name="keywords" content="procscope, Mutasem Kharma, معتصم خرما, Mutasem, Kharma, معتصم, خرما, eBPF, process tracer, malware triage, Linux security, incident response, strace alternative, Falco alternative, Tracee alternative, container security, Kubernetes security, syscall monitoring, runtime security, Go security tool, open source security">
<meta name="author" content="Mutasem Kharma (معتصم خرما)">
<meta name="creator" content="Mutasem Kharma (معتصم خرما)">
<meta name="publisher" content="Mutasem Kharma (معتصم خرما)">
<meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1">
<meta name="googlebot" content="index, follow">
<meta name="bingbot" content="index, follow">
<link rel="canonical" href="https://mutasem-mk4.github.io/procscope/">

<!-- JSON-LD for Search Engines & LLMs -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "procscope",
"operatingSystem": "Linux",
"applicationCategory": "SecurityApplication",
"description": "Zero-overhead eBPF process tracer for Linux malware triage and incident response.",
"author": {
"@type": "Person",
"name": "Mutasem Kharma",
"alternateName": "معتصم خرما",
"url": "https://github.com/Mutasem-mk4",
"sameAs": [
"https://www.linkedin.com/in/mutasem-kharma-668499289/",
"https://twitter.com/mutasem_mk4",
"https://dev.to/mutasem04",
"https://mutasem-portfolio.vercel.app/"
]
},
"creator": {
"@type": "Person",
"name": "Mutasem Kharma",
"alternateName": "معتصم خرما"
}
}
</script>

<!-- ═══════════ OPEN GRAPH (Facebook, LinkedIn, Slack, Discord) ═══════════ -->
<meta property="og:type" content="website">
<meta property="og:title" content="procscope — Zero-Overhead eBPF Process Tracer for Linux">
<meta property="og:description" content="Trace malware behavior in real time with zero overhead. Single binary, zero config. Built by Mutasem Kharma.">
<meta property="og:title" content="procscope — Zero-Overhead eBPF Process Tracer for Linux | Mutasem Kharma (معتصم خرما)">
<meta property="og:description" content="Trace malware behavior in real time with zero overhead. Single binary, zero config. Built by Mutasem Kharma (معتصم خرما).">
<meta property="og:url" content="https://mutasem-mk4.github.io/procscope/">
<meta property="og:site_name" content="procscope by Mutasem Kharma">
<meta property="og:site_name" content="procscope by Mutasem Kharma (معتصم خرما)">
<meta property="og:image" content="https://raw.githubusercontent.com/Mutasem-mk4/procscope/master/docs/procscope_header.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:alt" content="procscope — eBPF Process Tracer for Linux Malware Triage">
<meta property="og:image:alt" content="procscope — eBPF Process Tracer for Linux by Mutasem Kharma (معتصم خرما)">
<meta property="og:locale" content="en_US">
<meta property="og:locale:alternate" content="ar_JO">

<!-- ═══════════ TWITTER CARD ═══════════ -->
<meta name="twitter:card" content="summary_large_image">
Expand Down Expand Up @@ -194,7 +224,12 @@ <h3>K8s Aware</h3>
<footer style="padding:2rem;text-align:center;color:#333;font-size:0.8rem;">
<p>procscope is an open-source security tool created by <a href="https://github.com/Mutasem-mk4" style="color:#4CAF50;">Mutasem Kharma</a>.</p>
<p>Alternative to strace, Falco, Tracee, and Tetragon for targeted process investigation on Linux.</p>
<p>Also by Mutasem Kharma: <a href="https://github.com/Mutasem-mk4/Vex" style="color:#4CAF50;">Vex</a> (BOLA scanner), <a href="https://github.com/Mutasem-mk4/AuthSniper" style="color:#4CAF50;">AuthSniper</a> (recon framework), <a href="https://github.com/Mutasem-mk4/Specter-OS" style="color:#4CAF50;">Specter-OS</a> (AI security agent).</p>
<p>Also by Mutasem Kharma (معتصم خرما):
<a href="https://github.com/Mutasem-mk4/gspy" style="color:#4CAF50;">gspy</a> (Go eBPF DFIR),
<a href="https://github.com/Mutasem-mk4/Vex" style="color:#4CAF50;">Vex</a> (BOLA scanner),
<a href="https://github.com/Mutasem-mk4/AuthSniper" style="color:#4CAF50;">AuthSniper</a> (Recon),
<a href="https://github.com/Mutasem-mk4/Specter-OS" style="color:#4CAF50;">Specter-OS</a> (AI Agent).
</p>
<nav aria-label="Footer">
<a href="https://github.com/Mutasem-mk4" style="color:#4CAF50;">GitHub</a> ·
<a href="https://dev.to/mutasem04" style="color:#4CAF50;">Dev.to</a> ·
Expand Down
Loading
Loading