
मैलवेयर विश्लेषक बनने के लिए एक क्यूरेटेड मार्गदर्शिका, जिसमें आवश्यक ज्ञान, रिवर्स इंजीनियरिंग, विश्लेषण उपकरण, और व्यावहारिक अभ्यासों तथा संसाधनों के साथ LLM-सहायता प्राप्त सीखना शामिल है।
यह @PINKSAWTOOTH का निजी मत है, और यह आवश्यक नहीं कि आपके लिए सबसे अच्छा तरीका हो। कृपया इसे अध्ययन विधि के एक उदाहरण के रूप में देखें।
इसे पढ़ने से पहले, मैं जिस मैलवेयर विश्लेषक @hasherezade का सम्मान करता हूँ, उन्होंने अपने ब्लॉग में लिखा है कि मैलवेयर विश्लेषण का अध्ययन कैसे शुरू करें। इसमें कुछ अतिव्यापी भाग हो सकते हैं, लेकिन मैं इसे एक बार पढ़ने की सलाह देता हूँ। साथ ही, नीचे दिया गया ब्लॉग मुख्य रूप से अंग्रेजी स्रोतों पर केंद्रित है, इसलिए मैं जितना संभव हो सके जापानी-केंद्रित स्रोतों को पेश करना चाहता हूँ।
[!NOTE]
2026 परिशिष्ट: LLM युग में मैलवेयर विश्लेषण सीखना
जब मैंने यह पृष्ठ लिखना शुरू किया था, उस समय LLM या AI Agent आज की तरह रोजमर्रा में उपयोग करने योग्य नहीं थे। 2026 के वर्तमान में, यदि आप मैलवेयर विश्लेषण या रिवर्स इंजीनियरिंग सीखना चाहते हैं, तो पुस्तकों और वेब सामग्री के अलावा LLM का सक्रिय रूप से उपयोग करने की सलाह दी जाती है। विशेष रूप से, अध्ययन कार्यक्रम बनाने, कोड या असेंबली की व्याख्या करने, विश्लेषण करने, विश्लेषण स्क्रिप्ट बनाने और विश्लेषण परिणामों को व्यवस्थित करने में यह अत्यंत उपयोगी है।
दूसरी ओर, कई विश्लेषण तकनीकों में LLM के मनुष्यों से बेहतर प्रदर्शन करने के मामले बढ़ गए हैं। हालाँकि, इसका मतलब यह नहीं है कि बुनियादी ज्ञान अनावश्यक हो गया है। LLM के आउटपुट को समझने और स्वयं उसके आधार या शुद्धता की पुष्टि करने के लिए, विशेषज्ञ ज्ञान होना महत्वपूर्ण है (हालाँकि वह दिन भी निकट हो सकता है जब यह कार्य अर्थहीन हो जाए...)। इस लेख में, यह माना गया है कि LLM का उपयोग "उत्तर देने वाली मशीन" के रूप में नहीं, बल्कि "साथ में सीखने वाले शिक्षक, विश्लेषण के समय सहायक" के रूप में किया जाएगा।
सबसे पहले, मैलवेयर विश्लेषण के लिए पूर्वापेक्षित ज्ञान के बारे में संक्षेप में समझाता हूँ। मैलवेयर विश्लेषण सीखने से पहले, न्यूनतम रूप से कंप्यूटर विज्ञान (कम्प्यूटेशनल विज्ञान) का ज्ञान आवश्यक है।
इनके लिए, विश्वविद्यालय या तकनीकी कॉलेज में पढ़ाई गई सामग्री को समझना पर्याप्त होगा। (किसी विश्वविद्यालय के ऑनलाइन सिलेबस आदि की जाँच करके, अधिक विशिष्ट सामग्री जानी जा सकती है।) इस लेख में, प्रोग्रामिंग भाषा या कंप्यूटर विज्ञान कैसे सीखें यह दायरे से बाहर है, लेकिन निम्नलिखित अनुशंसित सामग्री हैं।
मैलवेयर विश्लेषण के लिए आवश्यक ज्ञान को मोटे तौर पर निम्नलिखित 5 श्रेणियों में विभाजित करता हूँ।
सबसे पहले, यह सीखना आवश्यक है कि मैलवेयर क्या है और मैलवेयर विश्लेषण किस प्रकार का कार्य है। मैलवेयर विश्लेषण के सामान्य अध्ययन के लिए अनुशंसित सामग्री और पुस्तकें प्रस्तुत करता हूँ।
मैलवेयर विश्लेषण ऑनलाइन प्रशिक्षण भी अनुशंसित है।
मैलवेयर व्यवहार और दुरुपयोग की जाने वाली तकनीकों के बारे में संकलित पृष्ठ प्रस्तुत करता हूँ।
प्रतिदिन प्रकाशित होने वाली खतरे की जानकारी और मैलवेयर विश्लेषण से संबंधित ब्लॉग और रिपोर्ट भी महत्वपूर्ण सूचना स्रोत हैं। RSS रीडर आदि से अद्यतन सूचनाएं प्राप्त करना सुविधाजनक है। ऐसी साइटें भी हैं जो इन्हें संकलित करती हैं, जिनका उपयोग किया जा सकता है।
इनमें से, जापानी में मैलवेयर के विस्तृत विश्लेषण को संबोधित करने वालों का परिचय देता हूँ।
इसके अलावा, YARA नियमों को पढ़कर भी मैलवेयर की विशेषताओं के बारे में सीखा जा सकता है।
रिवर्स इंजीनियरिंग मैलवेयर विश्लेषण का केवल एक हिस्सा है, लेकिन मैलवेयर विश्लेषक बनने के लिए यह एक अपरिहार्य मार्ग है। सैंडबॉक्स का उपयोग करके डायनामिक विश्लेषण या टूल का उपयोग करके डायनामिक विश्लेषण (मैन्युअल डीबगिंग को छोड़कर) केवल मैलवेयर की कार्यक्षमता की पूरी तस्वीर या उपयोग किए गए एल्गोरिदम की पहचान करना कठिन है।
रिवर्स इंजीनियरिंग करने के लिए, मूल स्रोत कोड के बारे में समझ होना आवश्यक है। (मैलवेयर विश्लेषण में सामान्य Windows वातावरण माना जाता है, लेकिन) Windows API का उपयोग करके प्रोग्रामिंग के अनुभव के बिना मैलवेयर विश्लेषण करना एक लंबा रास्ता होगा।
Windows API के लिए Microsoft आधिकारिक दस्तावेज़ और नमूने सार्वजनिक करता है। ※ जापानी में अनुवादित होने पर कुछ प्रदर्शन गलत हो सकते हैं, इसलिए सावधान रहें
Windows OS की संरचना सीखने के लिए निम्नलिखित पुस्तकें अनुशंसित हैं।
C/C++ Windows मैलवेयर की रिवर्स इंजीनियरिंग सीखने में आज भी अत्यंत महत्वपूर्ण है, इसलिए पहली सीखी जाने वाली भाषा के रूप में अनुशंसित है। दूसरी ओर, वास्तविक विश्लेषण लक्ष्य केवल C/C++ नहीं हैं। 2026 के वर्तमान में, कम से कम निम्नलिखित के बाइनरी और रनटाइम की विशेषताओं को जानना उपयोगी होगा।
生成されたコードを、Microsoft Learnのドキュメントと照らし合わせながら内容を確認し、自分でコンパイルします。
その後、GhidraやIDAなどで自分がコンパイルしたバイナリを解析し、元のソースコードと逆アセンブル・デコンパイル結果を比較します。
以下のループで勉強します。```text
LLMに小さなコードを作らせる
↓
ソースコードを読む・APIを調べる
↓
自分でビルドする
↓
Ghidraなどで解析する
↓
元のソースコードと比較する
↓
分からない部分だけLLMに質問する
↓
別の条件で再ビルドして比較する
उदाहरण के लिए, समान प्रोसेसिंग के सोर्स कोड की तुलना नीचे दिए गए तरीकों से करना अच्छा रहेगा।
मूल सोर्स कोड को जानते हुए बाइनरी का विश्लेषण करना, रिवर्स इंजीनियरिंग सीखने के लिए बहुत अच्छा अभ्यास है।
इसके अलावा, रिवर्स इंजीनियरिंग कौशल को और निखारने के लिए CTF के Rev चैलेंज या Crackme हल करना अच्छा रहेगा। विशेष रूप से PE फ़ाइल से संबंधित समस्याएँ या मैलवेयर विश्लेषकों के लिए बनाए गए चैलेंज अनुशंसित हैं।
इसके अलावा, मैलवेयर रिवर्स इंजीनियरिंग में अक्सर क्रिप्टोग्राफ़िक एल्गोरिदम की प्रोसेसिंग को रिवर्स इंजीनियर करना पड़ता है, इसलिए बुनियादी क्रिप्टोग्राफ़ी तकनीकों को सीखने की सलाह दी जाती है। एल्गोरिदम समझ लेने के बाद, GitHub आदि पर उपलब्ध ओपन-सोर्स क्रिप्टोग्राफ़िक एल्गोरिदम इम्प्लीमेंटेशन के सोर्स कोड को पढ़ें और वास्तव में उन्हें रिवर्स इंजीनियर करके देखें।
मैलवेयर विश्लेषण को आगे बढ़ाने में, बेहतर टूल का उपयोग करना या टूल में महारत हासिल करना विश्लेषण को आसान बना सकता है। साथ ही, विभिन्न ज्ञान होने पर भी वास्तव में विश्लेषण टूल के माध्यम से ही किया जाता है, इसलिए टूल के उपयोग के तरीके को भी समझना आवश्यक है।
विश्लेषण टूल की इंस्टॉलेशन या अपडेट जैसे प्रबंधन के लिए, Windows वातावरण में Mandiant द्वारा प्रकाशित FLARE-VM सुविधाजनक है। मैलवेयर विश्लेषण और रिवर्स इंजीनियरिंग के लिए आवश्यक टूल एक साथ इंस्टॉल किए जा सकते हैं।
Linux वातावरण में, REMnux का उपयोग किया जा सकता है। यह भी मैलवेयर विश्लेषण के लिए आवश्यक टूल एकत्र करता है, जिसे 収録ツールの一覧 से देखा जा सकता है।
FLARE-VM और REMnux दोनों ही मैलवेयर विश्लेषण वातावरण को आसानी से तैयार कर सकते हैं, इसलिए पहली बार विश्लेषण वातावरण बनाने के लिए भी अनुशंसित हैं। प्रत्येक में शामिल टूल की जाँच करके और वास्तव में उनका उपयोग करके, आप सीख सकते हैं कि कौन से विश्लेषण टूल मौजूद हैं और किन परिस्थितियों में उनका उपयोग किया जाता है।
इसके अलावा, नीचे दिए गए लिंक में पेश किए गए टूल का भी उपयोग करके देखना अच्छा रहेगा।
LLM के उपयोगी उपयोगों में से एक यह है कि इसे शिक्षक के रूप में उपयोग करना, जिससे आप जो नहीं समझते हैं उसके बारे में तुरंत प्रश्न पूछ सकते हैं। LLM के आने से पहले, आपको स्वयं यह शोध करना पड़ता था कि आप क्या नहीं समझते हैं और उस सामग्री को समझना पड़ता था। विशेष रूप से शुरुआती लोगों के लिए, यह भी पता नहीं होता था कि क्या शोध करना चाहिए, जो सीखने में एक बाधा थी। अब, उच्च स्तर के ज्ञान वाले LLM आपकी समझ के स्तर के अनुसार बार-बार धैर्यपूर्वक समझाते हैं। अगर समझ न आए तो दोबारा पूछ सकते हैं, और "और सरलता से समझाओ", "उदाहरण दो", "क्या यह समझ सही है, जाँच करो" जैसे उपयोग भी किए जा सकते हैं। अगर इच्छा हो तो, जो नहीं समझते हैं उसके बारे में जितना चाहें प्रश्न पूछते हुए सीख सकते हैं — यह अच्छा समय आया है।
उदाहरण के लिए, डिसअसेंबल परिणाम या डीकंपाइल परिणाम के बारे में, नीचे दिए गए जैसे प्रश्न पूछे जा सकते हैं।```text この関数の役割と、そう判断できる理由を教えてください。
```markdown
## 使用例
### 基本的な使い方
```bash
# 単一のターゲットをスキャン
python3 kitploit-scanner.py -t example.com
# 複数のターゲットをスキャン
python3 kitploit-scanner.py -t example.com -t test.org
# 出力をファイルに保存
python3 kitploit-scanner.py -t example.com -o results.txt
# 特定のポート範囲を指定
python3 kitploit-scanner.py -t example.com -p 80,443,8080
# タイムアウトを設定
python3 kitploit-scanner.py -t example.com --timeout 30
# 詳細な出力を有効化
python3 kitploit-scanner.py -t example.com -v
設定ファイルは config.yaml にあります。以下の項目を編集できます:
threads: 同時実行スレッド数(デフォルト: 10)timeout: リクエストタイムアウト(秒)user_agent: 使用するユーザーエージェントproxy: プロキシ設定(オプション)ツールは以下の形式で結果を出力します:
[+] ターゲット: example.com
[+] ポート: 80 (オープン)
[+] ポート: 443 (オープン)
[+] サービス: HTTP (ポート 80)
[+] サービス: HTTPS (ポート 443)
sudo を使用して実行してくださいpip install -r requirements.txt を実行Q: スキャンが遅い場合は?
A: --threads オプションでスレッド数を増やしてください。
Q: 特定のポートだけをスキャンしたい場合は?
A: -p オプションでポートを指定してください。
このプロジェクトは MIT ライセンスの下で公開されています。詳細は LICENSE ファイルを参照してください。
バグ報告や機能リクエストは GitHub Issues までお願いします。
プルリクエストも歓迎します。コーディング規約に従ってください。
このデコンパイル結果から変数の型を推定したいです。
型を判断するために、どの命令、API、参照先を確認すべきですか?
```
```markdown
यह एक विशेषज्ञ साइबर सुरक्षा उपकरण सामग्री अनुवादक है जो Kitploit के लिए है। आपका एकमात्र कार्य Markdown सामग्री का एक भाषा से दूसरी भाषा में सटीक, स्वाभाविक और संक्षिप्त अनुवाद करना है।
महत्वपूर्ण नियम:
- केवल प्राकृतिक भाषा पाठ का अनुवाद करें। कभी भी अनुवाद न करें: कोड, टर्मिनल कमांड, फ़ाइल पथ, URL, पैकेज नाम, CVE ID, पर्यावरण चर नाम, पहचानकर्ता।
- सभी Markdown संरचना को बरकरार रखें: शीर्षक, सूचियाँ, नेस्टेड सूचियाँ, तालिकाएँ (संरेखण सहित), लिंक, चित्र, इनलाइन कोड, कोड फ़ेंस, ब्लॉककोट, HTML ब्लॉक और क्षैतिज नियम।
- सटीक स्वरूपण बनाए रखें: व्हाइटस्पेस, नई पंक्तियाँ, इंडेंटेशन, तालिका स्तंभ संख्या और संरेखण चिह्न।
- बैज, शील्ड और स्थिति छवियों को बिल्कुल वैसे ही बनाए रखें जैसे वे दिखाई देते हैं।
- कभी भी ऐसा विराम चिह्न न जोड़ें, हटाएँ या संशोधित करें जो कोड व्यवहार को बदल सकता है।
- केवल अनुवादित पाठ लौटाएँ। कोई प्रस्तावना नहीं, कोई "यहाँ अनुवाद है" नहीं, कोई "ज़रूर!" नहीं, कोई स्पष्टीकरण नहीं, कोई टिप्पणी नहीं, कोई मेटा-पाठ नहीं।
- अपने उत्तर को कभी भी मार्कडाउन कोड ब्लॉक में न लपेटें।
- कभी भी JSON, YAML, XML, सरणियाँ, ऑब्जेक्ट, कुंजी/मान रैपर, स्कीमा, या "translated", "language", "markdown", "content", या "result" जैसे फ़ील्ड आउटपुट न करें।
- आपका उत्तर केवल कच्ची Markdown/सादा पाठ सामग्री होनी चाहिए। यदि स्रोत में कोड फ़ेंस के अंदर JSON/YAML/XML उदाहरण हैं, तो उन उदाहरणों को Markdown के भाग के रूप में शब्दशः संरक्षित करें; पूरे उत्तर को संरचित ऑब्जेक्ट में न बदलें।
- प्रश्न न पूछें। बातचीत में शामिल न हों।
- यदि आप किसी तकनीकी शब्द का सुरक्षित रूप से अनुवाद नहीं कर सकते हैं, तो उसे बिना अनुवादित छोड़ दें, बजाय इसे तोड़ने के जोखिम के।
निम्नलिखित Kitploit उपकरण सामग्री का अनुवाद करें।
यह एक लंबे Markdown दस्तावेज़ का भाग 9/15 है जिसका क्रम में अनुवाद किया जा रहा है।
स्रोत भाषा: ja है।
लक्ष्य भाषा: hi है।
सामग्री प्रकार: README भाग 9/15।
भाग-विशिष्ट नियम:
1. केवल प्राकृतिक भाषा पाठ का अनुवाद करें। कभी भी अनुवाद न करें: कोड ब्लॉक, शेल कमांड, फ़ाइल पथ, URL, पैकेज नाम, तकनीकी पहचानकर्ता, CVE ID, पर्यावरण चर नाम।
2. सभी Markdown सिंटैक्स को बिल्कुल वैसे ही बनाए रखें।
3. "## भाग N", "## खंड N", "## पिछले से जारी..." या "## भाग का अनुवाद..." जैसे परिचयात्मक शीर्षक न जोड़ें। "भाग N का अंत" या "सामग्री जारी है..." जैसे मार्कर न जोड़ें।
4. लोप को इंगित करने के लिए "..." इलिप्सिस मार्कर न जोड़ें। केवल प्रदान किए गए सटीक पाठ का अनुवाद करें, संरचना में अक्षर-दर-अक्षर।
5. भाग सीमाएँ जानबूझकर हैं। संरचना को संरक्षित करें ताकि भागों को बिना दृश्य कलाकृतियों के निर्बाध रूप से जोड़ा जा सके।
6. केवल अनुवादित पाठ लौटाएँ। कोई प्रस्तावना नहीं, कोई टिप्पणी नहीं, कोड ब्लॉक में लपेटना नहीं, कोई JSON/YAML/XML नहीं, कोई सरणियाँ नहीं, कोई ऑब्जेक्ट नहीं, कोई स्कीमा नहीं, कोई कुंजी/मान रैपर नहीं।
7. यदि भाग पैराग्राफ के बीच में शुरू होता है, तो उस बिंदु से अनुवाद जारी रखें। जब तक कि स्रोत में मौजूद न हो, अग्रणी नई पंक्ति या इंडेंट न जोड़ें।
इनपुट:
``````text
このWindows API呼び出しの前後で使われている構造体について説明してください。
各フィールドを確認するためにGhidra上でどこを見るべきかも教えてください。
```
```markdown
## 使用例
### 基本使用
```bash
# 扫描单个目标
python3 kitploit.py -t example.com
# 扫描多个目标
python3 kitploit.py -t example.com,example.org,example.net
# 从文件读取目标
python3 kitploit.py -f targets.txt
# 指定输出目录
python3 kitploit.py -t example.com -o /path/to/output
# 启用详细输出
python3 kitploit.py -t example.com -v
```
### 高级使用
```bash
# 使用代理
python3 kitploit.py -t example.com --proxy http://127.0.0.1:8080
# 自定义用户代理
python3 kitploit.py -t example.com --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"
# 设置超时时间(秒)
python3 kitploit.py -t example.com --timeout 30
# 启用多线程扫描
python3 kitploit.py -t example.com --threads 10
# 仅执行特定模块
python3 kitploit.py -t example.com --module subdomain,port,dir
```
### 输出格式
工具支持多种输出格式:
```bash
# 输出为 JSON
python3 kitploit.py -t example.com --format json
# 输出为 CSV
python3 kitploit.py -t example.com --format csv
# 输出为 HTML 报告
python3 kitploit.py -t example.com --format html
```
## 配置
配置文件位于 `config/` 目录下。您可以根据需要修改以下设置:
- `config/settings.yaml` - 主要配置
- `config/modules.yaml` - 模块配置
- `config/wordlists.yaml` - 字典配置
### 配置示例
```yaml
# config/settings.yaml
scan:
timeout: 10
threads: 5
retries: 3
output:
directory: ./results
format: json
verbose: false
proxy:
enabled: false
url: ""
```
## 模块说明
### 子域名枚举模块
该模块用于发现目标域名的子域名。支持以下方法:
- 字典爆破
- 搜索引擎查询
- DNS 记录查询
- 证书透明度日志
### 端口扫描模块
该模块用于检测目标主机开放的端口。支持 TCP 和 UDP 扫描。
### 目录扫描模块
该模块用于发现 Web 服务器上的隐藏目录和文件。
## 常见问题
### 如何更新工具?
```bash
git pull origin main
pip install -r requirements.txt
```
### 扫描结果保存在哪里?
默认情况下,结果保存在 `./results` 目录下。您可以使用 `-o` 参数指定其他目录。
### 如何添加自定义模块?
在 `modules/` 目录下创建新的 Python 文件,并按照模板实现相应的接口。
``````text
このアセンブリを1命令ずつ説明するのではなく、
まずbasic blockごとの役割を整理して、私が自分で処理を推定できるようにヒントをください。
```
यहाँ आपका अनुवाद है:
`-f` फ़्लैग का उपयोग करके, आप एक कस्टम कॉन्फ़िगरेशन फ़ाइल निर्दिष्ट कर सकते हैं। यह फ़ाइल एक JSON फ़ाइल होनी चाहिए जिसमें निम्नलिखित संरचना हो:
```json
{
"targets": [
{
"url": "https://example.com",
"method": "GET",
"headers": {
"User-Agent": "Mozilla/5.0"
},
"body": ""
}
],
"rate_limit": 100,
"timeout": 10,
"proxy": "http://127.0.0.1:8080"
}
```
- `targets`: हमला करने के लिए लक्ष्यों की एक सूची। प्रत्येक लक्ष्य में `url`, `method`, `headers`, और `body` फ़ील्ड हो सकते हैं।
- `rate_limit`: प्रति सेकंड अनुरोधों की अधिकतम संख्या।
- `timeout`: प्रत्येक अनुरोध के लिए टाइमआउट (सेकंड में)।
- `proxy`: वैकल्पिक प्रॉक्सी URL।
यदि आप कॉन्फ़िगरेशन फ़ाइल का उपयोग नहीं करते हैं, तो टूल कमांड-लाइन तर्कों से सीधे लक्ष्य URL को स्वीकार करेगा।```text
私はこの関数を「設定ファイルの読み込み処理」だと推測しました。
この仮説を検証するために確認すべきポイントを挙げてください。
```
शुरू से ही सीधा उत्तर पूछने के बजाय, संकेत, पुष्टिकरण बिंदु और सत्यापन विधियाँ पूछना बेहतर उपयोग है।
### Agentic Reverse Engineering
2026 के वर्तमान समय में, ChatGPT जैसे संवादात्मक LLM के अलावा, Coding Agent भी उपलब्ध हैं जो फ़ाइलों को पढ़ने-लिखने, प्रोग्राम बनाने, कमांड चलाने आदि में सक्षम हैं।
इसके अलावा, MCP (Model Context Protocol) आदि का उपयोग करके, AI Agent से विश्लेषण टूल को सीधे संचालित करने की विधि भी तेजी से फैल रही है।
उदाहरण के लिए, REMnux में AI Agent से REMnux पर मैलवेयर विश्लेषण टूल का उपयोग करने के लिए एक MCP Server उपलब्ध है।
- [Using AI with REMnux](https://docs.remnux.org/tips/using-ai)
- [REMnux MCP Server](https://github.com/REMnux/remnux-mcp-server)
Ghidra के लिए भी, AI Agent से संचालित करने के लिए कई MCP कार्यान्वयन सामने आए हैं। मैंने भी Ghidra को Headless मोड में उपयोग करके, MCP के माध्यम से AI Agent से विश्लेषण करने के लिए Mecha Ghidra विकसित किया है।
- [Mecha Ghidra](https://github.com/ghidra-user-jp/mecha_ghidra)
IDA और अन्य रिवर्स इंजीनियरिंग टूल के लिए भी, MCP या Agent के साथ एकीकरण के लिए कई कार्यान्वयन सामने आए हैं, और अब मानव द्वारा पहले मैन्युअल रूप से किए जाने वाले विश्लेषण कार्यों को Agent को सौंपा जा सकता है।
दूसरी ओर, शुरुआती चरण से ही सभी विश्लेषण Agent को सौंपना अनुशंसित नहीं है। ऐसा इसलिए है क्योंकि "यह विश्लेषण क्यों किया गया", "टूल अंदर से क्या कर रहा है", "क्या आउटपुट परिणाम सही है" जैसी चीज़ों का स्वयं निर्णय करने की क्षमता विकसित करना कठिन हो जाता है।
पहले स्वयं विश्लेषण करें, और जो हिस्सा समझ में न आए उसे LLM से पूछना शुरू करना अच्छा रहेगा। अभ्यस्त हो जाने के बाद, विश्लेषण सहायता स्क्रिप्ट बनाना, MCP द्वारा टूल एकीकरण, और Agent का उपयोग करके विश्लेषण स्वचालन की ओर धीरे-धीरे आगे बढ़ने की सलाह दी जाती है।
### LLM में जानकारी दर्ज करते समय सावधानियाँ
कार्य में संभाले जा रहे मैलवेयर, ग्राहक द्वारा प्रदान की गई फ़ाइलें, अप्रकाशित IoC, घटना (incident) की जानकारी, कंपनी की आंतरिक जानकारी आदि को बाहरी LLM सेवा में दर्ज करते समय सावधानी आवश्यक है।
उपयोग की जा रही सेवा के अनुबंध की शर्तें, डेटा अवधारण अवधि, प्रशिक्षण में उपयोग होने की संभावना, और अपने संगठन के नियमों की पुष्टि करने के बाद ही उपयोग करें।
आवश्यकता अनुसार, निम्नलिखित उपायों पर विचार करें।
- संवेदनशील जानकारी को मास्क करें
- संगठन द्वारा अनुमत LLM सेवा का उपयोग करें
- API या Enterprise सेवाओं के डेटा हैंडलिंग की पुष्टि करें
- आवश्यकता होने पर स्थानीय LLM का उपयोग करें
इसके अलावा, मैलवेयर के मुख्य भाग, विश्लेषण लक्ष्य फ़ाइलों, या विश्लेषण परिणामों में ऐसे स्ट्रिंग शामिल हो सकते हैं जो AI Agent को अनपेक्षित व्यवहार की ओर ले जा सकते हैं।
विशेष रूप से, जब AI Agent फ़ाइल संचालन, कमांड निष्पादन, और विश्लेषण टूल के संचालन तक कर सकता है, तो उसके पास सामान्य LLM की तुलना में अधिक शक्तिशाली अधिकार होते हैं। इसलिए, मैलवेयर विश्लेषण में AI Agent का उपयोग करते समय, VM जैसे पृथक वातावरण में चलाकर सुरक्षा सुनिश्चित करने की सलाह दी जाती है।
AI काफी बुद्धिमान हो गया है, फिर भी यह अनपेक्षित कमांड निष्पादित कर सकता है।
पिछले मैलवेयर विश्लेषण की तरह, विश्लेषण वातावरण को पृथक करने के मूल सिद्धांत का पालन करके उपयोग करें।
# वास्तविक मैलवेयर का उपयोग किए बिना सीखना
2026 के वर्तमान समय में, मैलवेयर विश्लेषण सीखने के लिए शुरू से ही वास्तविक मैलवेयर प्राप्त करने की आवश्यकता नहीं है।
बल्कि शुरुआती लोगों के लिए, निम्नलिखित क्रम की सलाह दी जाती है।
1. LLM या स्वयं द्वारा बनाए गए 10-50 पंक्तियों के छोटे प्रोग्राम
2. स्वयं द्वारा कंपाइल किए गए Windows API के नमूने
3. CTF/Crackme/मैलवेयर विश्लेषण प्रशिक्षण नमूने
4. मैलवेयर या C2 फ्रेमवर्क जैसे, स्रोत कोड सार्वजनिक रूप से उपलब्ध OSS कार्यान्वयन
5. केवल तभी जब आवश्यकता हो और सुरक्षित विश्लेषण वातावरण तैयार किया जा सके, वास्तविक मैलवेयर
शुरुआत में, ऐसे प्रोग्राम को शिक्षण सामग्री बनाना सबसे अच्छा है जिसका मूल स्रोत कोड ज्ञात हो।
स्वयं के विश्लेषण परिणाम की तुलना वास्तविक स्रोत कोड से कर सकते हैं, इसलिए "विश्लेषण कितना सही हुआ" और "कहाँ गलत पढ़ा" स्वयं जांचा जा सकता है।
अचानक वास्तविक मैलवेयर का विश्लेषण करने की तुलना में, पहले उत्तर-मिलान वाली शिक्षण सामग्री का उपयोग करके, डिसअसेंबल और डीकंपाइल परिणामों को पढ़ने की आदत डालना अधिक कुशलता से सीखने में मदद करता है।
# मैलवेयर प्राप्त करना
## प्रस्तावना
यहाँ मैलवेयर प्राप्त करने की विधियों का उल्लेख किया जाएगा, लेकिन प्रस्तुत सेवाओं का उपयोग करते समय उपयोग की शर्तों को अवश्य पढ़कर उपयोग करें।
साथ ही, निम्नलिखित सामग्री मैलवेयर प्राप्त करने की अनुशंसा नहीं करती है।
अवैध निर्देश इलेक्ट्रोमैग्नेटिक रिकॉर्ड (मैलवेयर) से संबंधित अपराध में, मैलवेयर का निर्माण, प्रावधान, अधिग्रहण, भंडारण आदि के लिए, उसका उद्देश्य और वैध कारण की उपस्थिति आदि आवश्यक शर्तें हैं।
मैं कानूनी विशेषज्ञ नहीं हूँ, इसलिए किस कारण से कानूनी रूप से `वैध कारण` माना जाएगा, यह मुझे ज्ञात नहीं है।
व्यक्तिगत शौक के रूप में मैलवेयर विश्लेषण करना `वैध कारण` के रूप में मान्यता नहीं दी जा सकती है।
जांच होने पर परेशानी, मुकदमा होने पर परेशानी, वैध कारण के रूप में प्रस्तुत करने योग्य गतिविधि रिकॉर्ड न होना, वकील की फीस न होना आदि — जो लोग शांतिपूर्ण जीवन जीना चाहते हैं, उन्हें व्यक्तिगत शौक के रूप में यह न करना ही बेहतर है।
फिर भी, अत्यधिक डरकर सिकुड़ने की आवश्यकता नहीं है।
न्यूनतम रूप से, टोक्यो महानगर पुलिस (警視庁) द्वारा प्रकाशित अवैध निर्देश इलेक्ट्रोमैग्नेटिक रिकॉर्ड से संबंधित अपराध के पृष्ठ को एक बार देखकर सामग्री की पुष्टि कर लें।
- https://www.keishicho.metro.tokyo.jp/kurashi/cyber/law/virus.html
मैलवेयर संभालते समय ध्यान देने योग्य बातें केवल कानूनी पहलू तक सीमित नहीं हैं।
मैलवेयर को निष्पादित करने पर (जानबूझकर या अनजाने में), अधिकांश मामलों में यह हमलावर द्वारा तैयार किए गए सर्वर तक पहुँचता है।
हमलावर के सर्वर पर आपके उपयोग किए गए IP पते का लॉग रहता है, और कनेक्शन के समय उपयोग किए जा रहे सिस्टम की जानकारी भी भेजी जा सकती है।
कुछ मैलवेयर में, हमलावर द्वारा कमांड निष्पादन हो सकता है, और आंतरिक नेटवर्क स्कैनिंग या (सबसे बचने योग्य) बाहरी संक्रमण गतिविधियाँ हो सकती हैं।
हमलावर के सर्वर पर दर्ज जानकारी न केवल हमलावर को, बल्कि तीसरे पक्ष को भी प्रदान की जा सकती है। इसके अलावा, जांच एजेंसियां सर्वर को जब्त करके लॉग का विश्लेषण करने के बाद, ISP से सूचना प्रकटीकरण अनुरोध कर सकती हैं।
यदि निम्नलिखित में से कोई भी एक बात लागू होती है, तो वास्तविक मैलवेयर का उपयोग करके सीखने से बचें।
- मैलवेयर संभालने में चिंता हो।
- मैलवेयर विश्लेषण के लिए समर्पित PC या स्वतंत्र नेटवर्क जैसा पृथक वातावरण तैयार नहीं कर सकते।
- नाबालिग या छात्र हैं, लेकिन मैलवेयर विश्लेषण या शोध के लिए जिम्मेदार व्यक्ति नहीं है (कार्यरत व्यक्तियों के मामले में, सभी जिम्मेदारी स्वयं वहन नहीं कर सकते)।
वास्तविक मैलवेयर को व्यक्तिगत रूप से प्राप्त किए बिना भी सीखने की विधियाँ पहले बताई गई हैं।
अंत में, ओटाकू सभी को पसंद आने वाले निम्नलिखित प्रसिद्ध उद्धरणों के साथ प्रस्तावना समाप्त करता हूँ।
- `With great power comes great responsibility`
- `The abyss gazes also into you.`
## मैलवेयर साझाकरण सेवा/IoC साझाकरण सेवा
मैलवेयर नमूने और IoC साझा करने के लिए कई सेवाएँ हैं। सबसे अधिक पंजीकरण वाली और प्रसिद्ध सेवा VirusTotal है, लेकिन डाउनलोड केवल सशुल्क खाते के लिए संभव है, इसलिए यहाँ निःशुल्क उपलब्ध सेवाओं का परिचय दिया जाएगा।
ये दो सेवाएँ नमूने प्राप्त करने के लिए प्रमुख स्रोत हैं।
- [MalwareBazaar](https://bazaar.abuse.ch/)
- [Vx Underground](https://www.vx-underground.org/)
संदर्भ जानकारी के रूप में निम्नलिखित सेवाएँ भी सूचीबद्ध हैं।
- [URLhaus](https://urlhaus.abuse.ch/)
- [ThreatFox](https://threatfox.abuse.ch/)
- [MalShare](https://www.malshare.com/)
- [VirusShare](https://virusshare.com/)
- [VirusBay](https://beta.virusbay.io/)
- [Vx Vaul](http://vxvault.net//ViriList.php)
- [theZoo](https://thezoo.morirt.com/)
- [malpedia](https://malpedia.caad.fkie.fraunhofer.de/)
## ऑनलाइन सैंडबॉक्स
निःशुल्क उपयोग की जाने वाली ऑनलाइन सैंडबॉक्स सेवाएँ मूल रूप से मैलवेयर के व्यवहार का विश्लेषण करने वाली सेवाएँ हैं, लेकिन इनसे दूसरों द्वारा पोस्ट किए गए मैलवेयर को डाउनलोड किया जा सकता है।
- [Hybrid Analysis](https://www.hybrid-analysis.com/)
- [Any Run](https://app.any.run/)
- [Triage](https://tria.ge/)
- [Joe Sandbox](https://www.joesandbox.com/)
- [cape](https://capesandbox.com/)
## OSS RAT
निम्नलिखित रिपॉजिटरी RAT (Remote Access Trojan) के कार्यान्वयन को समझने में सहायक हैं।
स्रोत कोड की तुलना वास्तविक बाइनरी से करके, संचार प्रक्रिया, कमांड निष्पादन, फ़ाइल संचालन आदि के कार्यान्वयन को सीखा जा सकता है।
- [Lilith RAT](https://github.com/werkamsus/Lilith)
- [Quasar RAT](https://github.com/quasar/Quasar)
- [NGLite](https://github.com/Maka8ka/NGLite)
- [AsyncRAT](https://github.com/NYAN-x-CAT/AsyncRAT-C-Sharp)
- [trochilus RAT](https://github.com/5loyd/trochilus)
- [gh0st RAT](https://github.com/sin5678/gh0st)
- [Poison-Ivy-Reload](https://github.com/killeven/Poison-Ivy-Reload)
- [GitHub Topics rat](https://github.com/topics/rat)
## C2 फ्रेमवर्क
मैलवेयर के C2 संचार और Agent के कार्यान्वयन को समझने के लिए, ओपन सोर्स में प्रकाशित C2 फ्रेमवर्क के स्रोत कोड को पढ़ना भी संदर्भ के रूप में सहायक है।
C2 फ्रेमवर्क में, Agent और C2 Server के बीच संचार, कमांड प्राप्त करना और निष्पादित करना, फ़ाइल संचालन, प्रोसेस संचालन, संचार डेटा का एन्क्रिप्शन आदि, मैलवेयर में भी आमतौर पर देखे जाने वाले कार्य कार्यान्वित होते हैं।
प्रत्येक का कार्यान्वयन भाषा, Agent की संरचना और संचार विधि अलग-अलग होती है, इसलिए स्रोत कोड और उत्पन्न Agent की तुलना करते हुए रिवर्स इंजीनियरिंग करना भी अच्छा अभ्यास हो सकता है।
- [Sliver](https://github.com/BishopFox/sliver)
- [Mythic](https://github.com/its-a-feature/Mythic)
- [Mythic Agents](https://github.com/MythicAgents)
- [AdaptixC2](https://github.com/Adaptix-Framework/AdaptixC2)
- [Empire](https://github.com/BC-SECURITY/Empire)
- [PoshC2](https://github.com/nettitude/PoshC2)
- [Merlin](https://github.com/Ne0nd0g/merlin)
- [MITRE CALDERA](https://github.com/mitre/caldera)
- [Havoc](https://github.com/HavocFramework/Havoc)
- [The C2 Matrix](https://www.sans.org/tools/the-c2-matrix)
- विभिन्न C2 फ्रेमवर्क की कार्यक्षमताओं और विशेषताओं की तुलना करने के लिए एक सूची