Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/microsoft/avml
मेमोरी फोरेंसिकफोरेंसिकडिजिटल फोरेंसिकघटना प्रतिक्रिया
GitHubmicrosoft/avml

avml

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

रिपॉजिटरी देखें
1.1k964 दिन पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

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 मेमोरी अधिग्रहण करने में सक्षम नहीं होगा।

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

  • Ubuntu: 12.04, 14.04, 16.04, 18.04, 18.10, 19.04, 19.10, 20.04, 21.04, 22.04
  • Centos: 6.5, 6.6, 6.7, 6.8, 6.9, 6.10, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.6, 7.9
  • RHEL: 6.7, 6.8, 6.9, 7.0, 7.2, 7.3, 7.4, 7.5, 7.7, 8.5, 9.0
  • Debian: 8, 9, 10, 11, 12
  • Oracle Linux: 6.8, 6.9, 6.10, 7.3, 7.4, 7.5, 7.6, 7.9, 8.5, 9.0
  • CBL-Mariner: 1.0, 2.0

उप-कमांड

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

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

आरंभ करना

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

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

root@kitploit:~
avml acquire --compress output.lime.compressed

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

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

root@kitploit:~
avml acquire output.lime

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

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

root@kitploit:~
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 निष्पादित करें।

root@kitploit:~
avml acquire --sas-url ${SAS_URL} --delete output.lime

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

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

Azure Block Blob Storage में

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

किसी दूरस्थ TCP लिसनर पर

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

root@kitploit:~
nc -l 9000 > snapshot.lime

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

root@kitploit:~
avml stream tcp collector.example.com:9000

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

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

root@kitploit:~
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 बनाएं:
root@kitploit:~
{
    "commandToExecute": "./avml acquire --compress --sas-url <GENERATED_SAS_URL> --delete",
    "fileUris": ["https://FULL.URL.TO.AVML.example.com/avml"]
}
  1. निर्दिष्ट config.json के साथ customScript एक्सटेंशन निष्पादित करें
root@kitploit:~
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 पूर्व-हस्ताक्षरित URL या एक GCP पूर्व-हस्ताक्षरित URL उत्पन्न करें।

लक्ष्य होस्ट पर, उत्पन्न पूर्व-हस्ताक्षरित URL के साथ avml निष्पादित करें।

root@kitploit:~
avml acquire --url ${URL} --delete output.lime

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

root@kitploit:~
avml convert ./compressed.lime ./uncompressed.lime

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

root@kitploit:~
avml convert --source-format lime --format lime_compressed ./uncompressed.lime ./compressed.lime

उपयोग

root@kitploit:~
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 पर निर्माण

root@kitploit:~
# 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 पर परीक्षण

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

  1. az cli स्थापित करें
  2. अपनी Azure सदस्यता में लॉग इन करने के लिए az login का उपयोग करें
  3. avml बनाएं (ऊपर देखें)
  4. ./eng/test-on-azure.sh

योगदान

यह परियोजना योगदान और सुझावों का स्वागत करती है। अधिकांश योगदानों के लिए आपको एक कंट्रीब्यूटर लाइसेंस समझौते (CLA) से सहमत होना आवश्यक है, जिसमें यह घोषित किया जाता है कि आपके पास अपने योगदान का उपयोग करने के लिए हमें अधिकार देने का अधिकार है, और आप वास्तव में ऐसा करते हैं। विवरण के लिए, https://cla.microsoft.com देखें।

जब आप एक पुल रिक्वेस्ट सबमिट करते हैं, तो एक CLA-बॉट स्वचालित रूप से निर्धारित करेगा कि आपको CLA प्रदान करने की आवश्यकता है या नहीं और PR को उचित रूप से सजाएगा (जैसे, लेबल, टिप्पणी)। बस बॉट द्वारा दिए गए निर्देशों का पालन करें। हमारे CLA का उपयोग करने वाले सभी रिपॉजिटरी में आपको यह केवल एक बार करना होगा।

इस परियोजना ने Microsoft Open Source Code of Conduct को अपनाया है। अधिक जानकारी के लिए Code of Conduct FAQ देखें या किसी अतिरिक्त प्रश्न या टिप्पणी के लिए [email protected] से संपर्क करें।

सुरक्षा समस्याओं की रिपोर्ट करना

सुरक्षा समस्याओं और बगों की रिपोर्ट निजी रूप से, ईमेल के माध्यम से, Microsoft Security Response Center (MSRC) को [email protected] पर की जानी चाहिए। आपको 24 घंटों के भीतर प्रतिक्रिया मिलनी चाहिए। यदि किसी कारण से आपको प्रतिक्रिया नहीं मिलती है, तो कृपया ईमेल के माध्यम से अनुवर्ती करें ताकि यह सुनिश्चित हो सके कि हमें आपका मूल संदेश प्राप्त हुआ है। MSRC PGP कुंजी सहित अधिक जानकारी, Security TechCenter में पाई जा सकती है।

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