Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
avml — पोर्टेबल Linux RAM अधिग्रहण उपकरण जो फोरेंसिक और घटना प्रतिक्रिया के लिए है, वैकल्पिक संपीड़न और रिमोट स्ट्रीमिंग के साथ LiME-संगत इमेज कैप्चर करता है। | Kitploit
उपकरण/GitHubGitHub/microsoft/avml
मेमोरी फोरेंसिकफोरेंसिकडिजिटल फोरेंसिकघटना प्रतिक्रियाडिजिटल फोरेंसिक में शीर्ष #10फोरेंसिक में शीर्ष #10घटना प्रतिक्रिया में शीर्ष #11मेमोरी फोरेंसिक में शीर्ष #3
1.1k96586घं 5मि पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
GitHub
microsoft/avml

avml

पोर्टेबल Linux RAM अधिग्रहण उपकरण जो फोरेंसिक और घटना प्रतिक्रिया के लिए है, वैकल्पिक संपीड़न और रिमोट स्ट्रीमिंग के साथ LiME-संगत इमेज कैप्चर करता है।

रिपॉजिटरी देखें

AVML (लिनक्स के लिए वोलेटाइल मेमोरी अधिग्रहण)

सारांश

लिनक्स के लिए एक पोर्टेबल वोलेटाइल मेमोरी अधिग्रहण उपकरण।

AVML एक X86_64 यूज़रलैंड वोलेटाइल मेमोरी अधिग्रहण उपकरण है जो Rust में लिखा गया है, और इसे एक स्टैटिक बाइनरी के रूप में तैनात करने के लिए बनाया गया है। AVML का उपयोग लक्ष्य OS वितरण या कर्नेल को पहले से जाने बिना मेमोरी प्राप्त करने के लिए किया जा सकता है। किसी ऑन-टार्गेट संकलन या फिंगरप्रिंटिंग की आवश्यकता नहीं है।

विशेषताएँ

  • रिकॉर्ड की गई छवियों को Azure Blob Store या HTTP PUT के माध्यम से बाहरी स्थानों पर सहेजें
  • Azure Blob Storage अपलोड Azure SDK की डिफ़ॉल्ट एक्सपोनेंशियल बैकऑफ़ नीति (8 प्रयास, कुल बीते समय पर एक मिनट की सीमा) के माध्यम से क्षणिक विफलताओं को पुनः प्रयास करता है।
  • Snappy का उपयोग करके वैकल्पिक पेज स्तर संपीड़न।
  • LiME आउटपुट प्रारूप का उपयोग करता है (जब संपीड़न का उपयोग नहीं किया जा रहा हो)।

मेमोरी स्रोत

  • /dev/crash
  • /proc/kcore
  • /dev/mem

यदि कमांडलाइन पर मेमोरी स्रोत निर्दिष्ट नहीं किया गया है, तो AVML एक कार्यात्मक स्रोत खोजने के लिए मेमोरी स्रोतों पर पुनरावृत्ति करेगा।

नोट: यदि कर्नेल सुविधा kernel_lockdown सक्षम है, तो AVML मेमोरी प्राप्त नहीं कर पाएगा।

परीक्षण किए गए वितरण

Azure VM परीक्षण मैट्रिक्स eng/images.txt में परिभाषित है और वर्तमान में इसमें शामिल हैं:

  • Ubuntu: 16.04, 18.04, 20.04, 22.04, 24.04, 26.04
  • CentOS: 7.9
  • RHEL: 7.9, 8.5, 8.10, 9.0, 9.8, 10.2
  • Debian: 11, 12, 13
  • Oracle Linux: 8.10, 9.8, 10.2
  • CBL-Mariner: 2.0
  • Azure Linux: 3.0
  • SUSE Linux Enterprise Server: 12 SP5, 15 SP7, 16.0
  • AlmaLinux: 8, 9, 10

सबकमांड

avml सबकमांड के साथ एक एकल बाइनरी है। प्रत्येक सबकमांड एक Cargo फ़ीचर द्वारा नियंत्रित होता है ताकि एक न्यूनतम बिल्ड में केवल वही क्षमता शामिल हो जिसकी आपको आवश्यकता है:

सबकमांडफ़ीचरडिफ़ॉल्टयह क्या करता है
acquire(सदैव)हाँमेमोरी को एक स्थानीय फ़ाइल में स्नैपशॉट करें (बाद में वैकल्पिक अपलोड)।
convertconvertहाँAVML / LiME / raw प्रारूपों के बीच कनवर्ट करें।
uploaduploadहाँHTTP PUT के माध्यम से या Azure Block Blob पर एक स्थानीय फ़ाइल अपलोड करें।
streamstreamहाँएक स्नैपशॉट को सीधे गंतव्य पर स्ट्रीम करें, कोई स्थानीय फ़ाइल नहीं।

cargo build --release --no-default-features के साथ एक न्यूनतम केवल-acquire बाइनरी बनाएँ।

शुरुआत करना

एक संपीड़ित मेमोरी छवि कैप्चर करना

लक्ष्य होस्ट पर:

avml acquire --compress output.lime.compressed

एक असंपीड़ित मेमोरी छवि कैप्चर करना

लक्ष्य होस्ट पर:

avml acquire output.lime

एक मेमोरी छवि कैप्चर करना और Azure Blob Store पर अपलोड करना

az cli क्रेडेंशियल्स वाले एक सुरक्षित होस्ट पर, एक SAS URL जनरेट करें।

EXPIRY=$(date -d '1 day' '+%Y-%m-%dT%H:%MZ')
SAS_URL=$(az storage blob generate-sas --account-name ACCOUNT --container CONTAINER test.lime --full-uri --permissions c --output tsv --expiry ${EXPIRY})

लक्ष्य होस्ट पर, जनरेट किए गए SAS टोकन के साथ avml निष्पादित करें।

avml acquire --sas-url ${SAS_URL} --delete output.lime

स्थानीय डिस्क पर लिखे बिना एक मेमोरी छवि स्ट्रीम करना

उन होस्ट्स के लिए जहाँ स्नैपशॉट को पहले एक स्थानीय फ़ाइल में लिखना अवांछनीय है (केवल-पढ़ने के लिए रूट, सीमित डिस्क, फोरेंसिक चेन-ऑफ-कस्टडी चिंताएँ), stream सबकमांड का उपयोग करें। यह शुरू में एक बार मेमोरी स्रोत चुनता है (वही प्राथमिकता क्रम जो acquire के /dev/stdout पथ का है — /proc/kcore, फिर /dev/crash, फिर /dev/mem; ओवरराइड करने के लिए --source पास करें) और चुने गए गंतव्य पर बाइट्स को क्रमिक रूप से लिखता है। स्ट्रीम के बीच में स्रोत को बदला नहीं जा सकता, इसलिए कोई स्वचालित स्रोत फ़ॉलबैक नहीं है।

Azure Block Blob Storage पर

avml stream blob ${SAS_URL}
  • ब्लॉक आकार स्वचालित रूप से निकाला जाता है ताकि स्नैपशॉट Azure की प्रति-blob 50,000-ब्लॉक सीमा के भीतर फिट हो जाए। --sas-block-size (MiB) एक न्यूनतम सीमा के रूप में कार्य करता है; यदि निकाला गया न्यूनतम बड़ा है, तो बड़ा मान जीतता है।
  • --sas-block-concurrency इन-फ़्लाइट stage_block कॉल्स की संख्या को सीमित करता है। अधिकतम RAM लगभग (concurrency + 1) * block_size होती है।
  • यदि स्नैपशॉट अपलोड के बीच में विफल हो जाता है, तो स्टेज किए गए ब्लॉक कमिट किए बिना छोड़ दिए जाते हैं; Azure अपनी मानक नीति के अनुसार उन्हें स्वचालित रूप से त्याग देता है।

एक रिमोट TCP लिसनर पर

कलेक्टर होस्ट पर:

nc -l 9000 > snapshot.lime

लक्ष्य होस्ट पर:

avml stream tcp collector.example.com:9000

avml एक बार कनेक्ट होता है और स्नैपशॉट को क्रमिक रूप से लिखता है। यदि स्ट्रीम के बीच में कनेक्शन टूट जाता है, तो स्नैपशॉट निरस्त हो जाता है; कोई पुनः आरंभ नहीं है। कोई TLS नहीं — यदि आवश्यक हो तो गोपनीयता और अखंडता के लिए SSH टनल या stunnel के साथ जोड़ें।

पहले से कैप्चर किए गए स्नैपशॉट को अपलोड करना

avml upload put  ./output.lime ${URL}              # HTTP PUT
avml upload blob ./output.lime ${SAS_URL}          # Azure Block Blob

VM एक्सटेंशन का उपयोग करके एक Azure VM की मेमोरी छवि कैप्चर करना

az cli क्रेडेंशियल्स वाले एक सुरक्षित होस्ट पर, निम्नलिखित करें:

  1. एक SAS URL जनरेट करें (ऊपर देखें)
  2. निम्नलिखित जानकारी वाली config.json बनाएँ:
{
    "commandToExecute": "./avml acquire --compress --sas-url <GENERATED_SAS_URL> --delete",
    "fileUris": ["https://FULL.URL.TO.AVML.example.com/avml"]
}
  1. निर्दिष्ट config.json के साथ customScript एक्सटेंशन निष्पादित करें
az vm extension set -g RESOURCE_GROUP --vm-name VM_NAME --publisher Microsoft.Azure.Extensions -n customScript --settings config.json

AWS S3 या GCP Cloud Storage पर अपलोड करना

एक सुरक्षित होस्ट पर, एक S3 pre-signed URL जनरेट करें या एक GCP pre-signed URL जनरेट करें।

लक्ष्य होस्ट पर, जनरेट किए गए pre-signed URL के साथ avml निष्पादित करें।

avml acquire --url ${URL} --delete output.lime

AVML-संपीड़ित छवि को डीकंप्रेस करना

avml convert ./compressed.lime ./uncompressed.lime

एक असंपीड़ित LiME छवि को संपीड़ित करना

avml convert --source-format lime --format lime_compressed ./uncompressed.lime ./compressed.lime

उपयोग

A portable volatile memory acquisition tool for Linux

Usage: avml <COMMAND>

Commands:
  acquire  Acquire a memory snapshot to a local file (and optionally upload it)
  convert  Convert between AVML and LiME snapshot formats and a raw memory image
  upload   Upload an already-acquired snapshot file to remote storage
  stream   Stream a memory snapshot directly to remote storage, without writing it to a local file
  help     Print this message or the help of the given subcommand(s)

प्रति-कमांड विकल्पों के लिए avml <COMMAND> --help चलाएँ।

Ubuntu पर बिल्ड करना

# Install MUSL
sudo apt-get install musl-dev musl-tools musl

# Install Rust via rustup
curl https://sh.rustup.rs -sSf | sh -s -- -y

# Add the MUSL target for Rust
rustup target add x86_64-unknown-linux-musl

# Build
cargo build --release --target x86_64-unknown-linux-musl

# Build without upload functionality
cargo build --release --target x86_64-unknown-linux-musl --no-default-features

Azure पर परीक्षण

परीक्षण स्क्रिप्ट कई संसाधन समूह, वर्चुअल मशीन और एक स्टोरेज खाता बनाएँगी, उपयोग करेंगी और साफ़ करेंगी।

टूल डाउनलोड करें