Windows, Linux, Android, and iOS unified digital forensics platform. Disk, RAM, logical acquisition, and backup analysis.
Website | Releases | Contributing | Security | Linux Agent | Windows Agent
Amele is a desktop forensic acquisition tool for authorized investigations. It brings disk imaging, memory acquisition, Android collection, iOS backup normalization, hash verification, case output handling, image viewing, and reporting into one native application.
The app runs as a real desktop window on Linux and Windows.
- Local disk acquisition: create raw disk images from local disks or image files with RAW or AFF4 output formatting.
- Remote disk acquisition (Agent): collect disk images through the Amele Linux and Windows agents with live throughput and hashing.
- Agentless remote acquisition (SSH / WinRM): acquire full remote physical disks and RAM over OpenSSH / WinRM directly without installing any agent on Linux or Windows targets.
- Local memory acquisition: capture RAM with AVML on Linux and WinPMEM on Windows.
- Remote memory acquisition: capture remote memory dumps via Agent or Agentless SSH streaming (
/proc/kcore, AVML, WinPMEM). - Output format flexibility: choose between bit-by-bit RAW (
.raw/.img) or forensically packaged AFF4 (.aff4) formats. - Android tools: check ADB, list devices, collect logical data, collect filesystem data, capture volatile data, and analyze Android case outputs.
- iOS tools: normalize unencrypted or already decrypted iTunes/Finder backups into a browsable Backup2FS-style file system, with per-file MD5/SHA1/SHA256 CSV logging.
- Docker & Container DFIR: audit container escape risks, scan environment variables for exposed secrets/API keys, extract raw configs and logs, package runtime Overlay2 UpperDir drift layers, and stream remote container evidence via Linux Agent.
- Online profiles: connect an
amele.noirlang.traccount, display synced roles such as BDFL or platform maintainer, and require verified membership for Android/iOS tools. - Case management: store acquisitions, notes, hashes, Android outputs, iOS outputs, reports, and
case_manifest.jsonintegrity inventories under selected cases. - Hashing and verification: calculate MD5, SHA1, SHA256, and SHA512; generate sidecar hashes and verify file integrity on the fly.
- Image viewing: mount supported images read-only for inspection.
- Reports: create case reports from collected outputs, notes, and iOS backup metadata summaries.
- Updates: check GitHub releases and download platform installers from inside the app.
Release builds are published on GitHub Releases and on the website.
- Linux AppImage:
amele-linux-x64.AppImage - Linux DEB:
amele-linux-x64.deb - Linux RPM:
amele-linux-x64.rpm - Arch Linux package:
amele-linux-x64.pkg.tar.zst - Windows MSI:
amele-windows-x64.msi
Agent binaries:
https://amele.noirlang.tr/amele-linux
https://amele.noirlang.tr/amele-win.exe
Module documentation:
- Windows forensic module
- Linux forensic module
- Android forensic module
- iOS forensic module
- Docker forensic module
Install the Rust stable toolchain:
rustup toolchain install stable --component rustfmt
rustup default stableLinux development packages:
sudo apt update
sudo apt install -y build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.1-devWindows builds require the Microsoft Edge WebView2 Runtime on the target system.
Debug build:
cargo build --lockedRelease build:
cargo build --release --lockedRun tests and checks:
cargo test --locked
cargo fmt --all -- --check
node --check ui/app.jsBuild the Linux AppImage:
./scripts/build-appimage.shBuild Linux DEB, RPM, and Arch packages:
./scripts/build-linux-packages.shStart the native desktop app:
cargo run -- uiRun the release binary:
./target/release/amele uiOpen the browser-backed debug UI:
cargo run -- ui-browserAndroid and iOS tools are locked until a local profile is connected to an online amele.noirlang.tr account. The desktop app talks to the website API; MongoDB connection strings and database passwords must stay on the website/backend side and are not embedded in the app.
The backend checks the saved Bearer token against /api/auth/session and the current user profile before running mobile endpoints, so editing the local profile JSON is not enough to unlock mobile tools. The local token is stored under the user's Amele profile folder and is not returned by /api/profiles.
Run the Linux agent on the target machine:
wget -O amele-linux https://amele.noirlang.tr/amele-linux
chmod +x amele-linux
./amele-linuxDownload the Windows agent:
https://amele.noirlang.tr/amele-win.exe
Connect to an agent from the app with IP address, port, and optional token.
This project uses GitHub Actions for automated building and packaging.
To save runner resources, full builds and prereleases are only triggered when the commit message contains the [build] tag:
git commit -m "feat: add new feature [build]"Commits without the [build] tag will be pushed to the dev branch but will not trigger build workflows.
Manual Build: You can also trigger the build workflow manually from the "Actions" tab in GitHub by clicking "Run workflow".
Windows, Linux, Android ve iOS için bütünleşik adli bilişim platformu. Disk, RAM, mantıksal edinim ve yedekleme analizi.
Web Sitesi | Sürümler | Katkıda Bulunma | Güvenlik | Linux Ajanı | Windows Ajanı
Amele, yetkili incelemeler için geliştirilmiş bir masaüstü adli edinim aracıdır. Disk imajı alma, bellek (RAM) edinimi, Android veri toplama, iOS backup normalizasyonu, hash doğrulama, vaka çıktısı yönetimi, imaj görüntüleme ve raporlama özelliklerini tek bir yerel uygulamada bir araya getirir.
Uygulama Linux ve Windows üzerinde gerçek bir masaüstü penceresi olarak çalışır.
- Yerel disk edinimi: Yerel disklerden veya imaj dosyalarından RAW veya AFF4 formatında disk imajları oluşturun.
- Uzak disk edinimi (Ajan): Linux ve Windows ajanları (agents) aracılığıyla canlı akış ve hash doğrulama ile uzak disk imajları toplayın.
- Agentsız uzak edinim (SSH / WinRM): Hedef sisteme ajan kurmadan OpenSSH veya WinRM bağlantısıyla uzaktan fiziksel disk ve RAM edinimini doğrudan gerçekleştirin.
- Yerel bellek (RAM) edinimi: Linux üzerinde AVML ve Windows üzerinde WinPMEM ile RAM bellek kopyasını alın.
- Uzak bellek (RAM) edinimi: Ajanlar veya agentsız SSH akışı (
/proc/kcore, AVML, WinPMEM) üzerinden canlı RAM dökümü alın. - Format esnekliği: Ham bit-by-bit RAW (
.raw/.img) veya adli paketli AFF4 (.aff4) edinim formatlarını seçin. - Android araçları: ADB durumunu kontrol edin, cihazları listeleyin, mantıksal veri toplayın, dosya sistemi verisi toplayın, uçucu (volatile) verileri alın ve Android vaka çıktılarını analiz edin.
- iOS araçları: Şifresiz veya önceden decrypt edilmiş iTunes/Finder backup klasörlerini Backup2FS düzeninde gezilebilir dosya sistemine dönüştürün; her dosya için MD5/SHA1/SHA256 CSV log üretin.
- Docker ve Konteyner Adli Bilişimi: Konteyner kaçış risklerini denetleyin, ortam değişkenlerindeki parola/token sızıntılarını tespit edin, runtime Overlay2 UpperDir drift katmanını arşivleyin ve canlı/uzak konteyner delillerini toplayın.
- Online profiller:
amele.noirlang.trhesabını bağlayın, BDFL veya platform maintainer gibi rolleri profilde görün ve Android/iOS araçlarını doğrulanmış üyelikle kullanın. - Vaka yönetimi: Edinimleri, notları, hash değerlerini, Android/iOS çıktılarını, raporları ve
case_manifest.jsonbütünlük envanterlerini seçilen vakalar altında saklayın. - Hash hesaplama ve doğrulama: MD5, SHA1, SHA256 ve SHA512 hesaplayın; elde edilen deliller için yan dosya (sidecar) hash dosyaları oluşturun.
- İmaj görüntüleme: Desteklenen imajları inceleme amacıyla salt okunur (read-only) olarak bağlayın (mount).
- Raporlar: Toplanan çıktılardan, notlardan ve iOS backup metadata özetlerinden vaka raporları oluşturun.
- Güncellemeler: Uygulama içerisinden GitHub sürümlerini kontrol edin ve platform yükleyicilerini indirin.
Kararlı sürümler GitHub Sürümleri (Releases) sayfasında ve web sitesinde yayınlanmaktadır.
- Linux AppImage:
amele-linux-x64.AppImage - Linux DEB:
amele-linux-x64.deb - Linux RPM:
amele-linux-x64.rpm - Arch Linux Paketi:
amele-linux-x64.pkg.tar.zst - Windows MSI:
amele-windows-x64.msi
Ajan (Agent) ikili dosyaları:
https://amele.noirlang.tr/amele-linux
https://amele.noirlang.tr/amele-win.exe
Modül dokümantasyonu:
- Windows adli bilişim modülü
- Linux adli bilişim modülü
- Android adli bilişim modülü
- iOS adli bilişim modülü
Stabil Rust araç zincirini (toolchain) kurun:
rustup toolchain install stable --component rustfmt
rustup default stableLinux geliştirme paketleri:
sudo apt update
sudo apt install -y build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.1-devWindows derlemeleri, hedef sistemde Microsoft Edge WebView2 Çalışma Zamanı (Runtime) gerektirir.
Geliştirici (Debug) derlemesi:
cargo build --lockedKararlı (Release) derlemesi:
cargo build --release --lockedTestleri ve kontrolleri çalıştırın:
cargo test --locked
cargo fmt --all -- --check
node --check ui/app.jsLinux AppImage derleme:
./scripts/build-appimage.shLinux DEB, RPM ve Arch paketlerini derleme:
./scripts/build-linux-packages.shYerel masaüstü uygulamasını başlatın:
cargo run -- uiKararlı ikili dosyayı çalıştırın:
./target/release/amele uiTarayıcı tabanlı hata ayıklama arayüzünü (debug UI) açın:
cargo run -- ui-browser# Hedef Linux/Windows disklerini listele
amele ssh-disks 192.168.1.100 root 22 parola123
# RAM aracını ve bellek durumunu kontrol et
amele ssh-tool-check 192.168.1.100 root 22 parola123
# Uzak disk imajı al (Linux /dev/sda veya Windows PhysicalDrive0)
amele ssh-image 192.168.1.100 root /dev/sda ./ciktilar vaka_adi 22 parola123 raw
# Uzak RAM dökümü al (/proc/kcore, AVML veya WinPMEM)
amele ssh-ram 192.168.1.100 root ./ciktilar vaka_adi 22 parola123 raw# Docker durumu, konteyner listesi ve loglar
amele docker-status
amele docker-list
amele docker-logs <container_id> 200
# Yerel konteyner delillerini (Overlay2 UpperDir drift, config, log) vakaya edin
amele docker-acquire <container_id> Case_Docker_001
# Uzak Linux Agent üzerinden Docker inceleme ve edinimi
amele docker-remote-status 192.168.1.100 8080 mysecrettoken
amele docker-remote-list 192.168.1.100 8080 mysecrettoken
amele docker-remote-acquire 192.168.1.100 8080 <container_id> Case_Remote_Docker mysecrettokenAndroid ve iOS araçları, yerel profil bir amele.noirlang.tr hesabına bağlanmadan kilitli kalır. Masaüstü uygulaması web sitesi API'siyle konuşur; MongoDB connection string ve veritabanı parolaları uygulamaya gömülmez, website/backend tarafında kalır.
Mobil endpointler çalışmadan önce backend kayıtlı Bearer token'ı /api/auth/session ve güncel kullanıcı profiliyle doğrular. Bu yüzden yerel profil JSON'unu elle düzenlemek Android/iOS araçlarını açmak için yeterli değildir. Yerel token kullanıcının Amele profil klasöründe tutulur ve /api/profiles cevabında döndürülmez.
Hedef makinede Linux ajanını çalıştırın:
wget -O amele-linux https://amele.noirlang.tr/amele-linux
chmod +x amele-linux
./amele-linuxWindows ajanını indirin:
https://amele.noirlang.tr/amele-win.exe
IP adresi, port ve isteğe bağlı token ile uygulama içerisinden ajana bağlanın.
Bu proje, otomatik derleme ve paketleme işlemleri için GitHub Actions kullanmaktadır.
Sunucu (runner) kaynaklarını tasarruflu kullanmak amacıyla, tam sürüm derlemeleri ve ön sürümler (prerelease) yalnızca commit mesajı [build] etiketini içerdiğinde tetiklenir:
git commit -m "feat: add new feature [build]"[build] etiketi içermeyen commit'ler dev dalına pushlanır ancak derleme iş akışlarını tetiklemez.
Manuel Derleme: GitHub'daki "Actions" sekmesinden "Run workflow" seçeneğine tıklayarak derleme iş akışını manuel olarak da tetikleyebilirsiniz.