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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
asadbg — asadbg is a framework of tools to aid in automating live debugging of Cisco ASA devices | Kitploit
उपकरण/GitHubGitHub/nccgroup/asadbg
Embedded Systems SecurityReverse EngineeringScripting & AutomationDebuggersNetwork SecurityHardware SecurityBinary AnalysisFirmware Analysis
GitHubnccgroup/asadbg

asadbg

asadbg is a framework of tools to aid in automating live debugging of Cisco ASA devices

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

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

सभी देखें →

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

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

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

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

asadbg

प्रारंभिक टिप्पणी: हम अनुशंसा करते हैं कि आप इसे asatools के भाग के रूप में उपयोग करें, लेकिन इसे अकेले भी उपयोग किया जा सकता है।

asadbg Cisco ASA डिवाइसों की लाइव डिबगिंग को स्वचालित करने में सहायता के लिए उपकरणों का एक फ्रेमवर्क है, साथ ही दोहराए जाने वाले कार्यों को शीघ्रता से करने के लिए सीरियल/ssh पर Cisco CLI के साथ इंटरैक्शन को स्वचालित करता है।

asadbg demo

  • यह gdb को रैप करता है
  • यह विभिन्न संस्करणों को आसानी से डीबग करने के लिए एक asadbg.cfg कॉन्फ़िगरेशन फ़ाइल का समर्थन करता है
  • यह वास्तविक हार्डवेयर और GNS3 दोनों का समर्थन करता है
  • वैकल्पिक रूप से यह IDA Pro से बेहतर डिबगिंग अनुभव के लिए ret-sync का उपयोग करता है
  • यह बूट पर अतिरिक्त gdb स्क्रिप्ट निष्पादित करने का समर्थन करता है
  • यह लाइब्रेरी प्रदान करता है जो वास्तविक हार्डवेयर पर कई फर्मवेयर संस्करणों में परीक्षण स्वचालित करने के लिए उपयोगी हो सकती हैं

मुख्य उपकरण asadbg.py है और यह अधिकांश अन्य सहायक स्क्रिप्ट चलाएगा। ध्यान दें कि आपको शुरुआत में asadbg का सर्वोत्तम रूप पाने के लिए asafw का उपयोग करके फर्मवेयर को अनपैक करने की आवश्यकता हो सकती है।

  • asadbg.py: ASAs को डीबग करने के लिए उपयोग किया जाने वाला मुख्य उपकरण
  • asdbg_hunt.py/asadbg_rename.py: नए टार्गेट्स के लिए सिंबल आयात करने हेतु idahunt के साथ उपयोग की जाने वाली IDA Python स्क्रिप्ट

निम्नलिखित को asadbg.py द्वारा स्वचालित रूप से आयात किया जाता है, लेकिन हम आपको बता रहे हैं कि ये किस लिए हैं:

  • asa_lib*.py: gdb Python स्क्रिप्ट जो libdlmalloc, libptmalloc और libmempool का उपयोग करती हैं।
  • asa_sync.py: gdb Python स्क्रिप्ट जो ret-sync का उपयोग करती है
  • comm.py: सीरियल, SSH, टेलनेट पर संचार करने के लिए फ़ंक्शनों का समूह
  • find_lina_pid.py: SSH कमांड का उपयोग करके lina PID खोजें
  • template_gdbinit: gdbinit टेम्पलेट जिसे हम जिन भी टार्गेट्स को डीबग करते हैं उनके लिए asadbg.py द्वारा पैच किया जाता है

आवश्यकताएँ

  • केवल Python3
    • pip3 install pyserial paramiko
  • Linux पर भारी परीक्षण किया गया (OS X पर भी काम कर सकता है)
  • वास्तविक ASA डिवाइस की फ्लैश पर प्रीलोडेड फर्मवेयर या GNS3 में कॉन्फ़िगर किया गया ASA एमुलेटर

आपको शुरू में अपने परिवेश से मेल खाने के लिए asadbg/env.sh को संशोधित करना होगा। यह आपको सभी स्क्रिप्ट द्वारा उपयोग किए जाने वाले टूल्स के पथ, साथ ही आपके ASA परिवेश से मेल खाने वाले कुछ वेरिएबल परिभाषित करने की अनुमति देगा। ध्यान दें कि एक समान asafw/env.sh भी है, लेकिन दोनों प्रोजेक्ट्स के लिए केवल एक का उपयोग करना आवश्यक है। हम अनुशंसा करते हैं कि आप इसे अपने ~/.bashrc में जोड़ें:``` source /path/to/asadbg/env.sh

root@kitploit:~
# स्वचालित डिबगिंग

asadbg का उपयोग करने का एक मुख्य लाभ यह है कि आप एमुलेटेड (GNS3) और वास्तविक Cisco ASA डिवाइस दोनों के अपने उपयोग को स्वचालित कर सकते हैं। इसमें सामान्य रूप से विभिन्न फर्मवेयर और कॉन्फ़िगरेशन को बूट करने और चलाने को स्वचालित करना, या विशेष रूप से gdb का उपयोग करके `lina` की डिबगिंग प्रक्रिया को स्वचालित करना शामिल हो सकता है। यह ज्यादातर `asadbg.py` स्क्रिप्ट के माध्यम से किया जाता है। मुख्य विचार ASA डिवाइस पर कुछ फ्लैश को उन फर्मवेयर और कॉन्फ़िगरेशन फ़ाइलों के साथ प्रीलोड करना है जिन्हें आप डिवाइस पर उपयोग करना चाहते हैं। प्रत्येक फर्मवेयर के लिए जिसे आप डीबग करना चाहते हैं, आप `asafw` टूल जैसी किसी चीज़ का उपयोग विभिन्न सिंबल निकालने के लिए कर सकते हैं और फिर उन सिंबल का उपयोग करके स्वचालित रूप से gdbinit फ़ाइलें जनरेट कर सकते हैं। डिफ़ॉल्ट रूप से `asadbg.py` डेटाबेस में मौजूद किसी भी सिंबल का उपयोग करके रनटाइम पर एक संस्करण-विशिष्ट gdbinit फ़ाइल बनाने को स्वचालित करने के लिए `template_gdbinit` फ़ाइल का उपयोग करेगा।

## किसी वास्तविक डिवाइस को तुरंत बूट करें (कोई डिबगिंग नहीं)

आप फर्मवेयर और कॉन्फ़िगरेशन फ़ाइलों को निर्दिष्ट करके किसी दिए गए संस्करण को तुरंत बूट कर सकते हैं, जो पहले से ही CF कार्ड पर मौजूद होनी चाहिए।```
asadbg$ ./asadbg.py --firmware-type normal --serial-port /dev/ttyUSB0 --firmware asa802-k8.bin --config config-802

कॉन्फ़िग फ़ाइल के साथ GNS3 डिवाइस को डिबग करना

निम्नलिखित उदाहरण दिखाता है कि आप GNS3 डिवाइस को डिबग करने के लिए कॉन्फ़िगरेशन फ़ाइलें कैसे सेटअप कर सकते हैं। पहले हम नीचे दिए गए समान एक asadbg.cfg कॉन्फ़िगरेशन फ़ाइल परिभाषित करते हैं। इसमें कॉन्फ़िगर किए गए फ़ायरवॉल के लिए GNS3 IP/पोर्ट होता है, जिसे हम GSN3 से ही प्राप्त करते हैं।```ini [GLOBAL] gns3_host=192.168.5.1 asadb_file=asadb.json

[asav941200] version=941200 arch=gns3 rootfs_path= /home/user/_asav941-200.qcow2.extracted/rootfs gns3_port=12005 attach_gdb=yes

root@kitploit:~
यह आवश्यक पतों वाली ASA डेटाबेस फ़ाइल `asadb.json` की ओर भी इंगित करता है। यहाँ
महत्वपूर्ण बात यह है कि `asadbg.cfg` में निर्दिष्ट `version=941200` और `arch=gns3`
नीचे `asadb.json` में फ़र्मवेयर से मेल खाने की अनुमति देते हैं। साथ ही हम संकेत देते हैं
कि gdb को अटैच करना चाहते हैं।```json
{
    "ASLR": false,
    "addresses": {
        "clock_interval": 59514112,
        "socks_proxy_server_start": 22139744,
        "aaa_admin_authenticate": 418288
    },
    "fw": "asav941-200.qcow2",
    "lina_imagebase": 4194304,
    "version": "9.4.1.200",
    "arch": 64
}

अब हम डिबगिंग शुरू करते हैं और clock_interval स्वचालित रूप से पैच हो जाएगा:``` asadbg$ ./asadbg.py --name asav941200 --asadbg-config asadbg.cfg [asadbg] Using config file: asadbg.cfg [asadbg] Found section: 'asav941200' in config [asadbg] Using gdb: '/usr/bin/gdb' [asadbg] Using architecture: gns3 [asadbg] Trying lina: /home/user/_asav941-200.qcow2.extracted/rootfs/asa/bin/lina [asadbg] Going to debug... [asadbg] Using GNS3 emulator 192.168.5.1:12005 [asadbg] Starting gdb now... [gdbinit_941200] Configuring paths... [gdbinit_941200] Disabling pagination... [gdbinit_941200] Connecting over TCP/IP... 0x0000003655201190 in ?? () from /home/user/_asav941-200.qcow2.extracted/rootfs/lib64/ld-linux-x86-64.so.2 [gdbinit_941200] Connected. [gdbinit_941200] Watchdog disabled [gdbinit_941200] heap debugging plugins loaded [gdbinit_941200] Additional gdb scripts loaded [gdbinit_941200] Done. (gdb) c Continuing.

root@kitploit:~
## कॉन्फ़िग फ़ाइल के साथ एक वास्तविक डिवाइस की डिबगिंग

निम्नलिखित उदाहरण दिखाता है कि आप किसी वास्तविक Cisco ASA डिवाइस को सीरियल कंसोल के माध्यम से
डिबग करने के लिए कॉन्फ़िगरेशन फ़ाइलों को कैसे सेटअप कर सकते हैं।```ini
[GLOBAL]
serial_port=/dev/ttyUSB0
asadb_file=asadb.json

[asa924-gdb]
version=924
arch=32
rootfs_path=/home/user/_asa924-k8.bin.extracted/rootfs
firmware=asa924-k8-debugshell-gdbserver.bin
config=config-924
firmware_type=gdb
attach_gdb=yes

यह भी ध्यान दें कि हमें एक firmware_type निर्दिष्ट करने की आवश्यकता है, जो यह दर्शाता है कि फर्मवेयर अपरिवर्तित है, रूटेड है, सीरियल शेल सक्षम है या बूट पर gdb सक्षम किया गया है। ऐसा इसलिए है क्योंकि हम प्रारूप के आधार पर बूट के समय अलग-अलग कार्य करेंगे। यहाँ हम देख सकते हैं कि हम एक संशोधित फर्मवेयर asa924-k8-debugshell-gdbserver.bin का उपयोग करते हैं, जिसमें बूट पर gdbserver सक्षम होता है और एक डिबग शेल होता है। नीचे हम देखते हैं कि जब bootrom शुरू होता है, asadbg CF कार्ड पर पहले से मौजूद फर्मवेयर और कॉन्फ़िग फ़ाइलों को लोड करने के लिए अनुक्रम को स्वचालित रूप से बाधित करता है।``` asadbg$ ./asadbg.py --name asa924-gdb --asadbg-config asadbg.cfg [asadbg] Using config file: asadbg.cfg [asadbg] Found section: 'asa924-gdb' in config [asadbg] Using gdb: '/usr/bin/gdb' [asadbg] Using architecture: 32 [asadbg] Trying lina: /home/user/_asa924-k8.bin.extracted/rootfs/asa/bin/lina [asadbg] Going to debug... [asadbg] Using serial port: /dev/ttyUSB0 [asadbg] Loading 'asa924-k8-debugshell-gdbserver.bin' with 'config-924'... [comm] Waiting boot... [SNIP] Platform ASA5505

Use BREAK or ESC to interrupt boot. Use SPACE to begin boot immediately. Boot interrupted.

[SNIP] rommon #0> boot asa924-k8-debugshell-gdbserver.bin cfg=config-924 Launching BootLoader... Boot configuration file contains 1 entry.

Loading asa924-k8-debugshell-gdbserver.bin........ Booting... Platform ASA5505 [SNIP] SMFW PID: 514, Starting /asa/bin/lina under gdbserver /dev/ttyS0 SMFW PID: 512, started gdbserver on member: 514//asa/bin/lina SMFW PID: 512, created member ASA BLOB, PID=514 Process /asa/bin/lina created; pid = 517 Remote debugging using /dev/ttyS0 [comm] gdb detected - boot finished. [comm] Boot should be finished now? [asadbg] Starting gdb now... [gdbinit_924] Configuring paths... [gdbinit_924] Disabling pagination... [gdbinit_924] Connecting over USB... 0xdc7e2820 in ?? () from /home/user/_asa924-k8.bin.extracted/rootfs/lib/ld-linux.so.2 [gdbinit_924] Connected. [gdbinit_924] Watchdog disabled [gdbinit_924] heap debugging plugins loaded [gdbinit_924] Additional gdb scripts loaded [gdbinit_924] Done. (gdb) c Continuing.

root@kitploit:~
# अतिरिक्त प्रतीक आयात करना

asadbg के कई हिस्से एक डेटाबेस `asadbg/asadb.json` पर निर्भर करते हैं जो
विभिन्न फर्मवेयर संस्करणों के लिए प्रतीक समाहित करता है। हमने कुछ
मौजूदा प्रतीक उपलब्ध कराए हैं, लेकिन आप अन्य को मैन्युअल रूप से जोड़ सकते हैं या
[idahunt](https://github.com/nccgroup/idahunt)
का उपयोग करके नए लक्ष्यों को स्वचालित रूप से जोड़ सकते हैं। यह अनुभाग बताता है कि इसे कैसे किया जाए।

## आवश्यकताएँ

asadbg में IDA Python स्क्रिप्ट्स मानती हैं कि `filelock.py/ida_helper.py`
उपलब्ध हैं। चूँकि वे सीधे IDA Python से निष्पादित होती हैं, इसलिए अब तक
हमने `asadbg/` में सिमलिंक बनाकर ऐसा किया है। हम वास्तव में उन्हें
रिपॉजिटरी पर नहीं बना सकते, क्योंकि Windows पर सिमलिंक Linux से अलग होते हैं। इसलिए
इसे मैन्युअल रूप से करना आवश्यक है।

Linux पर:```
asadbg$ ln -s ../idahunt/ida_helper.py ida_helper.py
asadbg$ ln -s ../idahunt/filelock.py filelock.py

Windows पर, व्यवस्थापक अनुमतियों के साथ:``` C:\asadbg> mklink filelock.py ..\idahunt\filelock.py C:\asadbg> mklink ida_helper.py ..\idahunt\ida_helper.py

root@kitploit:~
हमें डेटाबेस का पथ भी सेट करना होगा (`env.sh` द्वारा स्वचालित रूप से किया गया):```
C:\idahunt>set ASADBG_DB=C:\asadbg\asadb.json

प्रारंभिक विश्लेषण और नाम बदलना

हम मानते हैं कि आपने सभी फर्मवेयर को एक निर्देशिका में निकाल लिया है, उदाहरण के लिए asafw का उपयोग करके, या आपने केवल lina फ़ाइलें निकालीं और उन्हें एक पदानुक्रम में रखा जो दर्शाता है कि वे किस फर्मवेयर से आई हैं:``` C:\temp>tree /F Folder PATH listing Volume serial number is XXXX-XXX C:. ├───asa924-k8.bin │ lina │ ├───asa924-smp-k8.bin │ lina │ └───asav941-200.qcow2 lina

root@kitploit:~
पहले आपको IDA में प्रारंभिक विश्लेषण करने की आवश्यकता है। हम किसी भी कमांड के साथ `--list-only` का उपयोग कर सकते हैं ताकि यह जांच सकें कि कमांड का परिणाम क्या होगा।

ध्यान दें कि हम विशिष्ट ASA संस्करणों (9.2.4) और आर्किटेक्चर (32-bit) के लिए फ़िल्टर करते हैं:```
C:\idahunt>idahunt.py --verbose --inputdir "C:\temp" --analyse --scripts C:\asadbg\asadbg_rename.py --filter "filters\ciscoasa.py -m 924 -M 924 -v -a 32"
[idahunt] IDA32 = C:\Program Files (x86)\IDA 6.95\idaq.exe
[idahunt] IDA64 = C:\Program Files (x86)\IDA 6.95\idaq64.exe
[idahunt] ANALYSING FILES
[idahunt] Analysing C:\temp\asa924-k8.bin\lina
[idahunt] C:\Program Files (x86)\IDA 6.95\idaq.exe -B -LC:\temp\asa924-k8.bin\lina.log C:\temp\asa924-k8.bin\lina
[ciscoasa] Skipping non 32-bit: C:\temp\asa924-smp-k8.bin\lina
[ciscoasa] Skipping version too high: C:\temp\asav941-200.qcow2\lina
[idahunt] Waiting on remaining 1 IDA instances

[idahunt] EXECUTE SCRIPTS
[idahunt] Executing script C:\asadbg\asadbg_rename.py for C:\temp\asa924-k8.bin\lina
[idahunt] C:\Program Files (x86)\IDA 6.95\idaq.exe -A -SC:\asadbg\asadbg_rename.py -LC:\temp\asa924-k8.bin\lina.log C:\temp\asa924-k8.bin\lina.idb
[ciscoasa] Skipping non 32-bit: C:\temp\asa924-smp-k8.bin\lina
[ciscoasa] Skipping version too high: C:\temp\asav941-200.qcow2\lina
[idahunt] Waiting on remaining 0 IDA instances

एक बार विश्लेषण पूरा हो जाने पर, आपके पास संबंधित फ़ोल्डरों में lina के पास lina.i64 या lina.idb होना चाहिए।

डेटाबेस में प्रतीक जोड़ना

हम डेटाबेस में प्रतीक जोड़ने के लिए idahunt का उपयोग करते हैं:``` C:\idahunt>idahunt.py --verbose --inputdir "C:\temp" --scripts C:\asadbg\asadbg_hunt.py --filter "filters\ciscoasa.py -v" [idahunt] IDA32 = C:\Program Files (x86)\IDA 6.95\idaq.exe [idahunt] IDA64 = C:\Program Files (x86)\IDA 6.95\idaq64.exe [idahunt] EXECUTE SCRIPTS [idahunt] Executing script C:\asadbg\asadbg_hunt.py for C:\temp\asa924-k8.bin\lina [idahunt] C:\Program Files (x86)\IDA 6.95\idaq.exe -A -SC:\asadbg\asadbg_hunt.py -LC:\temp\asa924-k8.bin\lina.log C:\temp\asa924-k8.bin\lina.idb [idahunt] Executing script C:\asadbg\asadbg_hunt.py for C:\temp\asa924-smp-k8.bin\lina [idahunt] C:\Program Files (x86)\IDA 6.95\idaq64.exe -A -SC:\asadbg\asadbg_hunt.py -LC:\temp\asa924-smp-k8.bin\lina.log C:\temp\asa924-smp-k8.bin\lina.i64 [idahunt] Executing script C:\asadbg\asadbg_hunt.py for C:\temp\asav941-200.qcow2\lina [idahunt] C:\Program Files (x86)\IDA 6.95\idaq64.exe -A -SC:\asadbg\asadbg_hunt.py -LC:\temp\asav941-200.qcow2\lina.log C:\temp\asav941-200.qcow2\lina.i64 [idahunt] Executing script C:\asadbg\asadbg_hunt.py for C:\temp\asav962-7.qcow2\lina [idahunt] C:\Program Files (x86)\IDA 6.95\idaq64.exe -A -SC:\asadbg\asadbg_hunt.py -LC:\temp\asav962-7.qcow2\lina.log C:\temp\asav962-7.qcow2\lina.i64 [idahunt] Waiting on remaining 0 IDA instances

root@kitploit:~
# CLI पर कमांड निष्पादित करने का स्वचालन

हम SSH या सीरियल का उपयोग करके कुछ उपयोगी कमांड स्वचालित रूप से निष्पादित करने का समर्थन करते हैं,
और सैद्धांतिक रूप से टेलनेट का भी समर्थन करते हैं, हालाँकि इसका बहुत अधिक परीक्षण नहीं किया गया है।```
$ comm.py -h
usage: comm.py [-h] [--comm COMM_TYPE] [--port TARGET_PORT] [--ip TARGET_IP]
               [--user USER] [--pass PASSWORD] [--reboot] [--version]
               [--disable-checkheaps] [--upload] [--force] [--download]
               [--delete-ike-sa] [--delete-webvpn-sessions] [--md5]
               [--input [INPUT [INPUT ...]]] [--oldssh] [--cmd CMD]
               [-C CFG_FILE]

optional arguments:
  -h, --help            show this help message and exit
  --comm COMM_TYPE      Communication type {serial(default), telnet, ssh}
  --port TARGET_PORT    Specify a custom serial (e.g. "/dev/ttyUSB0")/telnet
                        (e.g. 5000) port)
  --ip TARGET_IP        Cisco ASA/GNS3 IP address
  --user USER           User for SSH
  --pass PASSWORD       Password for SSH
  --reboot              Reboot router (serial, SSH)
  --version             Get the version (serial, SSH)
  --disable-checkheaps  Disable checkheaps default timeout (60 sec)
  --upload              Upload over SSH
  --force               Overwrite existing files
  --download            Download over SSH
  --delete-ike-sa       Delete IKE SAs (serial, SSH)
  --delete-webvpn-sessions
                        Delete WebVPN sessions (serial, SSH)
  --md5                 Compute MD5 for files (serial, SSH)
  --input [INPUT [INPUT ...]]
                        List of input files for other commands (eg: file1
                        file2 file3) (e.g.: --upload, --download, --md5)
  --oldssh              Specify an old version of SSH (do not know specific
                        command lines options and do not need them because
                        unsecure :))
  --cmd CMD             Command to run on the CLI (debugging)
  -C CFG_FILE           File containing commands to use (e.g.
                        config/setup_ssh.cfg)

ASA संस्करण प्राप्त करना

हम --version का उपयोग करते हैं और इसे सीरियल या SSH के माध्यम से निष्पादित कर सकते हैं:``` $ comm.py --comm serial --port /dev/ttyUSB0 --version [comm] Retrieving version now... [comm] Serial: /dev/ttyUSB0 [comm] Detected version: 9.2(4) $ comm.py --comm ssh --ip 192.168.210.77 --port 22 --user user --pass user --version [comm] Retrieving version now... [comm] SSH: 192.168.210.77:22 [comm] Detected version: 9.2(4)

root@kitploit:~
## ASA को पुनः आरंभ करना

हम `--reboot` का उपयोग करते हैं:```
$ comm.py --comm ssh --reboot
[comm] Rebooting router now...
[comm] SSH: 192.168.210.77:22

यदि आपके पास एक चल रहा CLI है, तो आपको यह स्वतः रीबूट होता दिखना चाहिए:``` ciscoasa#


*** --- START GRACEFUL SHUTDOWN --- Shutting down isakmp Shutting down License Controller Shutting down File system


*** --- SHUTDOWN NOW --- Process shutdown finished

root@kitploit:~
## फ्लैश में फ़ाइलें अपलोड करना

हम SSH के माध्यम से एक बार में कई फ़ाइलें अपलोड कर सकते हैं:```
$ comm.py --upload --comm ssh --oldssh --pass user --input fw/*
[comm] Warning: using forced SSH
[comm] Uploading file...
[comm] SSH: 192.168.210.77:22
[comm] Uploading: asa924-5-k8.bin...
[comm] Executing 'sshpass -p user scp  fw/asa924-5-k8.bin [email protected]:asa924-5-k8.bin'...
Connection to 192.168.210.77 closed by remote host.
[comm] Uploading file...
[comm] SSH: 192.168.210.77:22
[comm] Uploading: asa924-k8.bin...
[comm] Executing 'sshpass -p user scp  fw/asa924-k8.bin [email protected]:asa924-k8.bin'...
Connection to 192.168.210.77 closed by remote host.
[comm] Finished all tasks.

ध्यान दें कि --oldssh पुराने ssh क्लाइंट का उपयोग करने पर उपयोगी है।

फ्लैश पर फ़ाइलों का MD5 परिकलित करना

फ्लैश पर फ़ाइलों का MD5 जाँचना कभी-कभी उपयोगी होता है ताकि यह सुनिश्चित किया जा सके कि फ़ाइलें सही ढंग से अपलोड की गई हैं।``` $ comm.py --md5 --input asa924-k8.bin asa924-5-k8.bin --comm ssh --oldssh --ip 192.168.210.77 Calculating MD5. Will take 20 seconds... asa924-k8.bin = 4558b27d0dd7ba1751e43b0ba33593a3 Calculating MD5. Will take 20 seconds... asa924-5-k8.bin = 74765d62abb2c4a5e677ed9ca49ebf87

root@kitploit:~
# gdb में lina PID/मेमोरी मैपिंग का निर्धारण

डिफ़ॉल्ट रूप से, gdb lina PID को नहीं जानता है।```
(gdb) info proc mappings
Can't determine the current process's PID: you must name one.

हम lina PID खोजने के लिए find_lina_pid.py का उपयोग करते हैं।
फिर हम मैपिंग प्राप्त करने के लिए info proc mappings <pid> का उपयोग करते हैं।``` (gdb) source find_lina_pid.py Finding lina PID: 516 You can use the following to see the lina mapping: info proc mappings (gdb) info proc mappings 516 process 516 Mapped address spaces:

root@kitploit:~
Start Addr   End Addr       Size     Offset objfile
 0x8048000  0xa388000  0x2340000        0x0 /asa/bin/lina
 0xa388000  0xa38a000     0x2000  0x233f000 /asa/bin/lina
 0xa38a000  0xa9aa000   0x620000  0x2341000 /asa/bin/lina
 0xa9aa000  0xb74b000   0xda1000  0xa9aa000 [heap]
0xa5ad9000 0xa5bda000   0x101000 0xa5ad9000
0xa5bda000 0xa5bde000     0x4000        0x0 /dev/zero (deleted)
0xa5bde000 0xa5de1000   0x203000 0xa5bde000
0xa5de1000 0xa5de5000     0x4000 0x50004000 /dev/mem
0xa5de5000 0xa5fe7000   0x202000 0xa5de5000
0xa5fe7000 0xa5fe8000     0x1000 0xffb00000 /dev/mem
0xa5fe8000 0xa5ff8000    0x10000 0xfff00000 /dev/mem
0xa5ff8000 0xa6000000     0x8000    0xd8000 /dev/mem
0xa6000000 0xa8724000  0x2724000        0x0 /dev/udma0
0xa8800000 0xab400000  0x2c00000        0x0 /SYSV00000002 (deleted)
0xab400000 0xab800000   0x400000  0x2c00000 /SYSV00000002 (deleted)
0xab800000 0xabc00000   0x400000  0x3000000 /SYSV00000002 (deleted)
0xabc00000 0xac000000   0x400000  0x3400000 /SYSV00000002 (deleted)
0xac000000 0xac400000   0x400000  0x3800000 /SYSV00000002 (deleted)
0xac400000 0xdbc00000 0x2f800000  0x3c00000 /SYSV00000002 (deleted)
0xdbf55000 0xdbf58000     0x3000 0xdbf55000
0xdbf58000 0xdc091000   0x139000        0x0 /lib/libc-2.9.so
0xdc091000 0xdc092000     0x1000   0x139000 /lib/libc-2.9.so
0xdc092000 0xdc094000     0x2000   0x139000 /lib/libc-2.9.so
0xdc094000 0xdc095000     0x1000   0x13b000 /lib/libc-2.9.so
0xdc095000 0xdc098000     0x3000 0xdc095000
0xdc098000 0xdc0a2000     0xa000        0x0 /lib/libgcc_s.so.1
0xdc0a2000 0xdc0a3000     0x1000     0x9000 /lib/libgcc_s.so.1
0xdc0a3000 0xdc0a4000     0x1000     0xa000 /lib/libgcc_s.so.1
0xdc0a4000 0xdc0c8000    0x24000        0x0 /lib/libm-2.9.so
0xdc0c8000 0xdc0c9000     0x1000    0x23000 /lib/libm-2.9.so
0xdc0c9000 0xdc0ca000     0x1000    0x24000 /lib/libm-2.9.so
0xdc0ca000 0xdc0d3000     0x9000        0x0 /lib/libudev.so.0.5.0
0xdc0d3000 0xdc0d4000     0x1000     0x8000 /lib/libudev.so.0.5.0
0xdcfeb000 0xdd000000    0x15000 0xdcfeb000 [stack]
0xffffe000 0xfffff000     0x1000        0x0 [vdso]
0xdc0e0000 0xdc0e1000     0x1000     0xa000 /usr/lib/libcgroup.so.1.0.34
0xdc0e1000 0xdc0e2000     0x1000     0xb000 /usr/lib/libcgroup.so.1.0.34
0xdc0e2000 0xdc6dc000   0x5fa000 0xdc0e2000
0xdc6dc000 0xdc6e3000     0x7000        0x0 /lib/librt-2.9.so
0xdc6e3000 0xdc6e4000     0x1000     0x6000 /lib/librt-2.9.so
0xdc6e4000 0xdc6e5000     0x1000     0x7000 /lib/librt-2.9.so
0xdc6e5000 0xdc6e7000     0x2000        0x0 /lib/libdl-2.9.so
0xdc6e7000 0xdc6e8000     0x1000     0x1000 /lib/libdl-2.9.so
0xdc6e8000 0xdc6e9000     0x1000     0x2000 /lib/libdl-2.9.so
0xdc6e9000 0xdc6fd000    0x14000        0x0 /lib/libpthread-2.9.so
0xdc6fd000 0xdc6fe000     0x1000    0x13000 /lib/libpthread-2.9.so
0xdc6fe000 0xdc6ff000     0x1000    0x14000 /lib/libpthread-2.9.so
0xdc6ff000 0xdc701000     0x2000 0xdc6ff000
0xdc701000 0xdc71c000    0x1b000        0x0 /usr/lib/libexpat.so.1.6.0
0xdc71c000 0xdc71e000     0x2000    0x1a000 /usr/lib/libexpat.so.1.6.0
0xdc71e000 0xdc71f000     0x1000    0x1c000 /usr/lib/libexpat.so.1.6.0
0xdc71f000 0xdc7cd000    0xae000        0x0 /lib/libstdc++.so.6.0.10
0xdc7cd000 0xdc7d1000     0x4000    0xad000 /lib/libstdc++.so.6.0.10
0xdc7d1000 0xdc7d2000     0x1000    0xb1000 /lib/libstdc++.so.6.0.10
0xdc7d2000 0xdc7d8000     0x6000 0xdc7d2000
0xdc7d8000 0xdc7dd000     0x5000        0x0 /usr/lib/libnuma.so.1
0xdc7dd000 0xdc7de000     0x1000     0x4000 /usr/lib/libnuma.so.1
0xdc7de000 0xdc7df000     0x1000     0x5000 /usr/lib/libnuma.so.1
0xdc7df000 0xdc7e0000     0x1000 0xdc7df000
0xdc7e1000 0xdc7e2000     0x1000 0xdc7e1000
0xdc7e2000 0xdc7fe000    0x1c000        0x0 /lib/ld-2.9.so
0xdc7fe000 0xdc7ff000     0x1000    0x1b000 /lib/ld-2.9.so
0xdc7ff000 0xdc800000     0x1000    0x1c000 /lib/ld-2.9.so
0xdcfeb000 0xdd000000    0x15000 0xdcfeb000 [stack]
0xffffe000 0xfffff000     0x1000        0x0 [vdso]
root@kitploit:~
टूल डाउनलोड करें