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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
DAMM — मेमोरी में मैलवेयर का विभेदक विश्लेषण | Kitploit
उपकरण/GitHubGitHub/504ensicslabs/damm
मेमोरी फोरेंसिकभेद्यता विश्लेषणफोरेंसिकमालवेयर विश्लेषणडिजिटल फोरेंसिकघटना प्रतिक्रियाArchived
GitHub504ensicslabs/damm

DAMM

मेमोरी में मैलवेयर का विभेदक विश्लेषण

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
वेबसाइट

DAMM

Volatility के ऊपर निर्मित एक ओपन सोर्स मेमोरी विश्लेषण उपकरण। यह समुदाय को उपलब्ध कराने के लिए दिलचस्प नई तकनीकों के लिए एक परीक्षण मैदान के रूप में है। ये तकनीकें डेटा कमी और कुछ विशेषज्ञ ज्ञान को संहिताबद्ध करके जांच प्रक्रिया को तेज करने का एक प्रयास हैं।

विषय-सूची

  • विशेषताएँ
  • उपयोग
    • समर्थित प्लगिन
    • उदाहरण
    • अंतर-निर्धारण
    • अद्वितीय आईडी हेरफेर
    • फ़िल्टरिंग
    • चेतावनियाँ
  • अंत में

विशेषताएँ

  • ~30 Volatility प्लगिन को मिलाकर ~20 DAMM प्लगिन बनाए गए हैं (उदाहरण के लिए, pslist, psxview और अन्य तत्व 'processes' प्लगिन में संयोजित किए गए हैं)
  • एक ही आह्वान में कई प्लगिन चला सकते हैं
  • प्लगिन परिणामों को SQLite डेटाबेस में संरक्षण के लिए या "cached" विश्लेषण के लिए संग्रहीत करने का विकल्प
  • एक फ़िल्टरिंग/टाइप प्रणाली जो pids जैसे गुणों पर आसानी से फ़िल्टर करने की अनुमति देती है, ताकि किसी प्रक्रिया से संबंधित सभी जानकारी देखी जा सके, और स्ट्रिंग्स के लिए सटीक या आंशिक मिलान आदि।
  • समान या लगभग समान मशीनों के लिए दो परिणाम डेटाबेस के बीच अंतर दिखाने की क्षमता, और cmdline से यह नियंत्रित करना कि अंतर-निर्धारण कैसे काम करता है
  • कुछ प्रकार के संदिग्ध व्यवहार पर चेतावनी देने की क्षमता
  • टर्मिनल, tsv या grepable के लिए आउटपुट

उपयोग ```

NOTE: Most DAMM output looks better piped through 'less -S' (upper 'S') as in:

python damm.py | less -S (for default output format)

root@kitploit:~

python damm.py -h usage: damm.py [-h] [-d DIR] [-p PLUGIN [PLUGIN ...]] [-f FILE] [-k KDBG] [--db DB] [--profile PROFILE] [--debug] [--info] [--tsv] [--grepable] [--filter FILTER] [--filtertype FILTERTYPE] [--diff BASELINE] [-u FIELD [FIELD ...]] [--warnings] [-q]

DAMM v1.0 Beta

optional arguments: -h, --help show this help message and exit -d DIR Path to additional plugin directory -p PLUGIN [PLUGIN ...] Plugin(s) to run. For a list of options use --info -f FILE Memory image file to run plugin on -k KDBG KDBG address for the images (in hex) --db DB SQLite db file, for efficient input/output --profile PROFILE Volatility profile for the images (e.g. WinXPSP2x86) --debug Print debugging statements --info Print available volatility profiles, plugins --tsv Print screen formatted output. --grepable Print in grepable text format --filter FILTER Filter results on name:value pair, e.g., pid:42 --filtertype FILTERTYPE Filter match type; either "exact" or "partial", defaults to partial --diff BASELINE Diff the imageFile|db with this db file as a baseline -u FIELD [FIELD ...] Use the specified fields to determine uniqueness of memobjs when diffing --warnings Look for suspicious objects. -q Query the supplied db (via --db).

root@kitploit:~
### समर्थित प्लगइन्स <a name="plugins"/>

See #python damm.py --info

apihooks callbacks connections devicetree dlls evtlogs handles idt injections messagehooks mftentries modules mutants privileges processes services sids timers


### उदाहरण <a name="example"/>
Volatility की तरह एक प्रोफाइल, एक मेमोरी इमेज और चलाने के लिए प्लगइन्स की सूची (या 'all') प्रदान करें, टर्मिनल आउटपुट पाने के लिए:```
python damm.py --profile WinXPSP2x86 -f memory.dmp -p processes | less -S
(or python damm.py --profile WinXPSP2x86 -f memory.dmp -p processes dlls modules)
(or python damm.py --profile WinXPSP2x86 -f memory.dmp -p all)

अंत में

प्रश्नों या टिप्पणियों के लिए: [email protected] बग रिपोर्ट के लिए, कृपया github issue tracker का उपयोग करें।

टूल डाउनलोड करें
root@kitploit:~
processes
offset   	name           	pid 	ppid	prio	image_path_name                                                              	create_time                 	exit_time                   	threads	session_id	handles	is_wow64	pslist	psscan	thrdproc	pspcid	csrss	session	deskthrd	command_line                                                                                                                                                                                                                                                                
0x25c8830	System         	4   	0   	8   	                                                                             	                            	                            	59     	          	403    	False   	True  	True  	True    	True  	False	False  	False
0x225ada0	alg.exe        	188 	668 	8   	C:\WINDOWS\System32\alg.exe                                                  	2010-10-29 17:09:09 UTC+0000	                            	6      	0         	107    	False   	True  	True  	True    	True  	True 	True   	True    	C:\WINDOWS\System32\alg.exe
0x2114938	ipconfig.exe   	304 	968 	8   	                                                                             	2011-06-03 04:31:35 UTC+0000	2011-06-03 04:31:36 UTC+0000	0      	0         	       	False   	True  	True  	False   	True  	False	False  	False
0x2086978	TSVNCache.exe  	324 	1196	8   	C:\Program Files\TortoiseSVN\bin\TSVNCache.exe                               	2010-10-29 17:11:49 UTC+0000	                            	7      	0         	54     	False   	True  	True  	True    	True  	True 	True   	True    	"C:\Program Files\TortoiseSVN\bin\TSVNCache.exe"
0x22df020	smss.exe       	376 	4   	11  	\SystemRoot\System32\smss.exe                                                	2010-10-29 17:08:53 UTC+0000	                            	3      	          	19     	False   	True  	True  	True    	True  	False	False  	False   	\SystemRoot\System32\smss.exe
...

इन परिणामों को SQLite db में सहेजने के लिए, बस db के लिए एक फ़ाइलनाम प्रदान करें:``` python damm.py --profile WinXPSP2x86 -f memory.dmp -p processes --db my_results.db

root@kitploit:~
यह परिणाम टर्मिनल पर प्रिंट करेगा और साथ ही उन्हें 'my_results.db' में संग्रहीत करेगा।

परिणामों को फिर से देखने के लिए:```
python damm.py -p processes --db my_results.db

(ध्यान दें कि अब आपको मेमोरी इमेज या प्रोफ़ाइल निर्दिष्ट करने की आवश्यकता नहीं है, और मूल प्रोसेसिंग में चाहे कितना भी समय लगा हो, लिस्टिंग लगभग तुरंत ही आ जाएगी।)

यदि आप बाद में प्रोसेस और अन्य प्लगइन्स देखना चाहते हैं:``` python damm.py --profile WinXPSP2x86 -p processes dlls modules --db my_results.db

root@kitploit:~
करेगा:
 1. 'processes' आउटपुट के लिए db से परामर्श करना
 2. 'dlls' और 'modules' प्लगइन चलाना
 3. परिणाम प्रदर्शित करना
 4. नए परिणामों को db में संग्रहीत करना

एक बार जब आप db में कुछ डेटा संग्रहीत कर लेते हैं, तो आप इसे -q स्विच के साथ क्वेरी कर सकते हैं```
python damm.py -q --db my_results.db 
profile:	WinXPSP2x86
memimg:	WinXPSP2x86/stuxnet.vmem
COMPUTERNAME:	JAN-DF663B3DBF1
plugins:	processes dlls modules

प्लगइन्स में विशेषताएँ (attributes) होती हैं जिनमें फ़िल्टरिंग के लिए प्रकार हो सकते हैं, उदा., प्रोसेस के लिए: (सभी प्लगइन विशेषताओं को देखने के लिए --info का उपयोग करें)``` offset name : string pid : pid ppid : pid image_path_name : string command_line : string create_time exit_time threads session_id handles is_wow64 pslist psscan thrdproc pspcid csrss session deskthrd

root@kitploit:~
इन विशेषताओं और प्रकारों का उपयोग DAMM के डिफरेंसिंग और फ़िल्टरिंग कार्यों द्वारा किया जा सकता है

### डिफरेंसिंग <a name="differencing"/>
डिफरेंसिंग इंजन का उपयोग करने के लिए, 2 अलग-अलग मेमोरी इमेज से 2 डेटाबेस बनाएं, जैसे कि एक मैलवेयर के निष्पादित होने से पहले का और एक बाद का```
python damm.py --profile WinXPSP2x86-f before.dmp -p processes --db before.db
python damm.py --profile WinXPSP2x86 -f after.dmp -p processes --db after.db

फिर बेसलाइन db के लिए --diff विकल्प का उपयोग करें (यहाँ, असंक्रमित मेमोरी इमेज से db)।``` python damm.py -p processes --db after.db --diff before.db

processes Status offset name pid ppid prio image_path_name create_time exit_time threads session_id handles is_wow64 pslist psscan thrdproc pspcid csrss session deskthrd command_line New 0x17d22e0 pythonw.exe 1256 1940 8 2013-10-31 23:23:14 UTC+0000 2013-10-31 23:23:19 UTC+0000 0 -268370093 False False True False False False False False Changed 0x18b4d38 svchost.exe 1080 692 8 2013-10-31 17:21:26 UTC+0000 66->71 False False True False False False False False Changed 0x1915198 winlogon.exe 648 376 13 2013-10-31 17:21:25 UTC+0000 24->26 False False True False False False False False Changed 0x1900120 services.exe 692 648 9 2013-10-31 17:21:25 UTC+0000 16->18 False False True False False False False False Changed 0x18b0360 svchost.exe 1124 692 8 2013-10-31 17:21:26 UTC+0000 5->6 False False True False False False False False Changed 0x1875490 explorer.exe 1636 1596 8 2013-10-31 17:21:27 UTC+0000 13->14 False False True False False False False False ...

root@kitploit:~
परिणाम ऊपर दिए गए 'processes' प्लगइन आउटपुट के समान दिखते हैं, लेकिन कुछ अंतर हैं:
* केवल वे परिणाम प्रदर्शित होते हैं जो 'after.db' में नए हैं या दोनों dbs में मौजूद हैं लेकिन उनमें कुछ विशेषताएँ हैं जो 'before.db' से बदल गई हैं (यहाँ आउटपुट काटा गया है)।
* केवल 'after.db' में मौजूद परिणामों के पहले ('Status') कॉलम में 'New' होता है।
* जो परिणाम dbs के बीच बदले हैं, उनका 'Status' 'Changed' होता है, और महत्वपूर्ण बात यह है कि वे DAMM द्वारा पहचाने गए परिवर्तनों को '->' से दर्शाते हैं: ऊपर आउटपुट की आखिरी पंक्ति में थ्रेड्स की संख्या बदल गई है।

### यूनिक आईडी मैनिपुलेशन <a name="unique-id"/>
यह निर्धारित करने के लिए कि ऊपर दोनों मेमोरी कैप्चर में कौन-कौन से प्रोसेस मौजूद हैं, पर्दे के पीछे प्रोसेस की कुछ विशेषताओं का उपयोग करके प्रत्येक के लिए एक यूनिक पहचानकर्ता बनाया जाता है। उदाहरण के लिए, डिफ़ॉल्ट रूप से DAMM प्रोसेस के यूनिक पहचानकर्ता के रूप में pid, ppid, name, और start time का उपयोग करता है। यह उचित है क्योंकि ये चीज़ें प्रोसेस के जीवनकाल में बदलने की संभावना कम होती हैं (बदलनी नहीं चाहिए? बदल सकती नहीं?), जबकि thread और handles की संख्या जैसी विशेषताएँ लगातार बदलती रहती हैं। यह डिफ़ॉल्ट सेट उसी मशीन के उसी बूट से लिए गए मेमोरी इमेज की वस्तुओं की तुलना के लिए ठीक काम करता है (जैसे VM स्नैपशॉट का उपयोग करके), लेकिन मशीन के अलग-अलग बूट से लिए गए मेमोरी इमेज की तुलना करने के बारे में क्या? या अन्य मशीनों की? pid और ppid शायद समान नहीं होंगे, लेकिन name, image path और command line समान होने चाहिए।

एक स्टॉक XPSP2x86 मेमोरी इमेज की तुलना हमारी इमेज से करना, जब कुछ मैलवेयर चल चुका था:```
python damm.py -p processes --diff stock_WinXPSP2x86_processes.db --db after_malware.db

...
New     0x1874da0       explorer.exe    1636    1596    C:\WINDOWS\Explorer.EXE C:\WINDOWS\Explorer.EXE 2013-10-31 17:21:27 UTC+0000    None    12      0       316     False   True    False   True    True    True    True    True    
New     0x1983020       smss.exe        376     4       \SystemRoot\System32\smss.exe   \SystemRoot\System32\smss.exe   2013-10-31 17:21:24 UTC+0000    None    3               19      False   True    False   True    True    False   False
New     0x182cda0       wpabaln.exe     1812    648     C:\WINDOWS\system32\wpabaln.exe C:\WINDOWS\system32\wpabaln.exe 2013-10-31 23:10:13 UTC+0000    None    1       0       58      False   True    False   True    True    True    True
New     0x1883308       spoolsv.exe     1500    692     C:\WINDOWS\system32\spoolsv.exe C:\WINDOWS\system32\spoolsv.exe 2013-10-31 17:21:27 UTC+0000    None    14      0       113     False   True    False   True    True    True    True
Changed 0x1bcc830->0x1bcc9c8    System  4       0                       None    None    60->71          209->266        False   True    True->False     True    True    False   False   False   

परिणामस्वरूप हर प्रोसेस को 'New' के रूप में टैग किया जाता है (System को छोड़कर) क्योंकि डिफ़ॉल्ट रूप से हम अद्वितीय पहचानकर्ता बनाने के लिए pid और ppid का उपयोग करते हैं।

इसके कारण, DAMM उपयोगकर्ता को यह निर्दिष्ट करने की अनुमति देता है कि किसी ऑब्जेक्ट के कौन से गुण अद्वितीय पहचानकर्ता बनाने के लिए उपयोग किए जा सकते हैं। यदि हम DAMM को केवल process name, image_path_name, और command_line का उपयोग करने के लिए कहते हैं, तो हमें अधिक उचित परिणाम मिलते हैं:``` python damm.py -p processes --diff stock_WinXPSP2x86_processes.db --db after_malware.db -u name image_path_name command_line

Status offset name pid ppid image_path_name command_line create_time exit_time threads session_id handles is_wow64 pslist psscan thrdproc pspcid csrss session deskthrd
New 0x1860020 wuauclt.exe 548 1080 C:\WINDOWS\system32\wuauclt.exe "C:\WINDOWS\system32\wuauclt.exe" /RunStoreAsComServer Local[438]SUSDS109850d1d4659d4590c0302d99249922 2013-10-31 17:22:20 UTC+0000 None 7 New 0x1891da0 VBoxTray.exe 1932 1636 C:\WINDOWS\system32\VBoxTray.exe "C:\WINDOWS\system32\VBoxTray.exe" 2013-10-31 17:21:29 UTC+0000 None 7 0 65 False True False True True New 0x195bbf0 pythonw.exe 1256 1940 C:\Python27\pythonw.exe C:\Python27\pythonw.exe C:\hkurkt\analyzer.py 2013-10-31 23:09:24 UTC+0000 None 5 0 114 False True False True True True New 0x1877448 MagicDisc.exe 1960 1636 C:\Program Files\MagicDisc\MagicDisc.exe "C:\Program Files\MagicDisc\MagicDisc.exe" 2013-10-31 17:21:29 UTC+0000 None 1 0 24 False True False New 0x182cda0 wpabaln.exe 1812 648 C:\WINDOWS\system32\wpabaln.exe C:\WINDOWS\system32\wpabaln.exe 2013-10-31 23:10:13 UTC+0000 None 1 0 58 False True False True True True True New 0x1877940 pythonw.exe 1940 1636 C:\Python27\pythonw.exe "C:\Python27\pythonw.exe" "C:\Documents and Settings\jawauser\Start Menu\Programs\Startup\agent.pyw" 2013-10-31 17:21:29 UTC+0000 None 1 0 New 0x1875718 tdl3 1344 1256 C:\DOCUME1\jawauser\LOCALS1\Temp\tdl3 "C:\DOCUME1\jawauser\LOCALS1\Temp\tdl3" 2013-10-31 23:09:25 UTC+0000 None 1 0 37 False True False True True New 0x18ee360 VBoxService.exe 860 692 C:\WINDOWS\system32\VBoxService.exe system32\VBoxService.exe 2013-10-31 17:21:26 UTC+0000 None 8 0 106 False True False True True True Changed 0x1bcc830->0x1bcc9c8 System 4 0 None None 60->71 209->266 False True True->False True True False False False
Changed 0x18b7020->0x18b4648 svchost.exe 1076->1080 680->692 C:\WINDOWS\System32\svchost.exe C:\WINDOWS\System32\svchost.exe -k netsvcs 2011-09-26 01:33:36 UTC+0000->2013-10-31 17:21:26 UTC+0000 None 87->7 Changed 0x1994d08->0x18ffa30 services.exe 680->692 636->648 C:\WINDOWS\system32\services.exe C:\WINDOWS\system32\services.exe 2011-09-26 01:33:35 UTC+0000->2013-10-31 17:21:25 UTC+0000 None 15->1 Changed 0x16a2cd0->0x18fd648 lsass.exe 692->704 636->648 C:\WINDOWS\system32\lsass.exe C:\WINDOWS\system32\lsass.exe 2011-09-26 01:33:35 UTC+0000->2013-10-31 17:21:25 UTC+0000 None 24->22 0 356-> Changed 0x1aefda0->0x1983020 smss.exe 384->376 4 \SystemRoot\System32\smss.exe \SystemRoot\System32\smss.exe 2011-09-26 01:33:32 UTC+0000->2013-10-31 17:21:24 UTC+0000 None 3 19 False Changed 0x189a1d0->0x18a7a60 svchost.exe 1336->1152 680->692 C:\WINDOWS\system32\svchost.exe C:\WINDOWS\system32\svchost.exe -k LocalService 2011-09-26 01:33:37 UTC+0000->2013-10-31 17:21:26 UTC+0000 None 14->1 Changed 0x16c9b40->0x1914aa8 winlogon.exe 636->648 384->376 ??\C:\WINDOWS\system32\winlogon.exe winlogon.exe 2011-09-26 01:33:35 UTC+0000->2013-10-31 17:21:25 UTC+0000 None 16->18 0 498->509 Changed 0x1ab5248->0x18c1020 svchost.exe 944->992 680->692 C:\WINDOWS\system32\svchost.exe C:\WINDOWS\system32\svchost -k rpcss 2011-09-26 01:33:36 UTC+0000->2013-10-31 17:21:26 UTC+0000 None 11->9 0 Changed 0x14b03e0->0x183e620 alg.exe 2272->1888 680->692 C:\WINDOWS\System32\alg.exe C:\WINDOWS\System32\alg.exe 2011-09-26 01:33:55 UTC+0000->2013-10-31 17:21:37 UTC+0000 None 7->6 0 112->105 Changed 0x1af5cd0->0x1874da0 explorer.exe 1752->1636 1696->1596 C:\WINDOWS\Explorer.EXE C:\WINDOWS\Explorer.EXE 2011-09-26 01:33:45 UTC+0000->2013-10-31 17:21:27 UTC+0000 None 32->12 0 680->316 False Changed 0x1670020->0x18e4020 svchost.exe 868->904 680->692 C:\WINDOWS\system32\svchost.exe C:\WINDOWS\system32\svchost -k DcomLaunch 2011-09-26 01:33:35 UTC+0000->2013-10-31 17:21:26 UTC+0000 None 17 Changed 0x15685e0->0x1883308 spoolsv.exe 1516->1500 680->692 C:\WINDOWS\system32\spoolsv.exe C:\WINDOWS\system32\spoolsv.exe 2011-09-26 01:33:39 UTC+0000->2013-10-31 17:21:27 UTC+0000 None 14 0 159-> Changed 0x1816ab8->0x190c020 csrss.exe 612->624 384->376 ??\C:\WINDOWS\system32\csrss.exe C:\WINDOWS\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows S Changed 0x19f7548->0x18afc70 svchost.exe 1200->1124 680->692 C:\WINDOWS\system32\svchost.exe C:\WINDOWS\system32\svchost.exe -k NetworkService 2011-09-26 01:33:37 UTC+0000->2013-10-31 17:21:26 UTC+0000 None

root@kitploit:~
DAMM अब कम प्रोसेसों को 'New' के रूप में पहचानता है (मैलवेयर प्रोसेस सहित), जिससे अन्वेषक अपने प्रयासों को इन प्रोसेसों पर केंद्रित कर सकता है।

### Filtering <a name="filtering"/>

एक छोटे मेमोरी सैंपल पर सभी प्लगइन्स चलाने पर, हमें ~14,000 मेमोरी ऑब्जेक्ट्स मिलते हैं: प्रोसेस, dlls, मॉड्यूल, आदि। क्या होगा यदि हमने पहले ही किसी प्रोसेस या स्ट्रिंग की पहचान कर ली है? Grep समस्याग्रस्त हो सकता है, विशेष रूप से pids की खोज करते समय, इसलिए DAMM में एक सरल type और filtering प्रणाली शामिल है। उन ऑब्जेक्ट्स पर फ़िल्टर करने के लिए जिनमें किसी निश्चित मान का pid विशेषता है:```
python damm.py -p processes dlls connections handles --db after_malware.db --filter pid:1344

processes
offset	name	pid	ppid	image_path_name	command_line	create_time	exit_time	threads	session_id	handles	is_wow64	pslist	psscan	thrdproc	pspcid	csrss	session	deskthrd	
0x1875718	tdl3	1344	1256	C:\DOCUME~1\jawauser\LOCALS~1\Temp\tdl3	"C:\DOCUME~1\jawauser\LOCALS~1\Temp\tdl3"	2013-10-31 23:09:25 UTC+0000	None	1	0	37	False	True	False	True	True	TrueTrue	True

dlls
proc_pid	dll_base	size_of_image	load_count	full_dll_name	
1344	0x73000000	155648	0x1	C:\WINDOWS\system32\WINSPOOL.DRV	
1344	0x400000	77824	0xffff	C:\DOCUME~1\jawauser\LOCALS~1\Temp\tdl3	
1344	0x77f10000	299008	0xffff	C:\WINDOWS\system32\GDI32.dll	
1344	0x7e410000	593920	0xffff	C:\WINDOWS\system32\user32.dll	
...

connections
offset	pid	local_ip	local_port	remote_ip	remote_port	allocated	
0x1853580	1344	192.168.56.101	1035	192.168.43.171	2042	True	

handles
offset	pid	handle_value	granted_access	object_type	name	
0xe1007ff0	1344	0x4	0xf0003	KeyedEvent	CritSecOutOfMemoryEvent	
0x81a43310	1344	0x3c	0x1f03ff	Thread	TID 384 PID 1344	
0x81902878	1344	0x6c	0x1f01ff	File	\Device\Tcp	
0x81902240	1344	0xc	0x100020	File	\Device\HarddiskVolume1\DOCUME~1\jawauser\LOCALS~1\Temp			
0x81906158	1344	0x38	0x1f0003	Semaphore	shell.{A48F1A32-A340-11D1-BC6B-00A0C90312E1}	
0x81a43310	1344	0x64	0x1f03ff	Thread	TID 384 PID 1344	
0x81851900	1344	0x68	0x1f01ff	File	\Device\Afd\Endpoint	
0x81953f78	1344	0x20	0xf01ff	Desktop	Default	
0xe106b648	1344	0x44	0xf003f	Key	MACHINE\SYSTEM\CONTROLSET001\SERVICES\WINSOCK2\PARAMETERS\PROTOCOL_CATALOG9	
0x81902950	1344	0x70	0x1f01ff	File	\Device\Tcp	
0x81902cd0	1344	0x7c	0x100001	File	\Device\KsecDD	
0xe1aa0ca0	1344	0x80	0x2001f	Key	USER\S-1-5-21-1644491937-789336058-854245398-1003\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\INTERNET SETTINGS	
(many lines removed for brevity)

यह किसी प्रक्रिया से जुड़ी वस्तुओं का अच्छा अवलोकन दे सकता है।

और भी शक्तिशाली, diff और फ़िल्टरिंग का उपयोग एक साथ किया जा सकता है। मेरे पास tdl3 संक्रमण से पहले का मेमोरी सैंपल है और एक बाद का। पहले वाले db में 'tdl' स्ट्रिंग खोजने पर ~600 हिट्स मिलते हैं। संक्रमण के बाद वाले db में, ~730 हिट्स हैं। (ध्यान दें कि ntdll.dll में tdl स्ट्रिंग होती है।) नीचे दिए अनुसार diff और फ़िल्टरिंग को एक साथ उपयोग करने पर केवल ~180 हिट्स मिलते हैं - एक महत्वपूर्ण कमी। ध्यान दें कि string और pid फ़िल्टरिंग के लिए, DAMM डिफ़ॉल्ट रूप से सटीक मिलान करता है। --filtertype partial विकल्प का उपयोग करने से फ़िल्टरिंग आंशिक मिलान में बदल जाती है।``` python damm.py -p all --diff before_tdl3.db --db after_tdl3.db --filter string:tdl --filtertype partial > string_tdl_diff.txt

root@kitploit:~
### चेतावनियाँ <a name="warnings"/>
ट्राइएज प्रक्रिया को और भी आसान बनाने के प्रयास में, DAMM में एक प्रायोगिक चेतावनी प्रणाली बनाई गई है जो दुर्भावनापूर्ण गतिविधि के संकेतों का पता लगाती है, जिनमें शामिल हैं:

कुछ Windows प्रक्रियाओं के लिए:
* गलत parent/child संबंध
* छिपी हुई प्रक्रियाएँ
* गलत binary path
* गलत default priority
* गलत session

सभी प्रक्रियाओं, और लोड की गई DLLs और modules के लिए:
* temp निर्देशिका से लोड/रन किया गया

DLLs के लिए:
* नकली extensions
* छिपी हुई DLLs 

और भी बहुत कुछ!
* injections में PE headers
* domain access देने वाले SIDs
* debug privileges
...```
python damm.py --db after_tdl3.db  --warnings

DAMM किसके लिए जाँच करता है, इसकी अधिक जानकारी के लिए warnings.py फ़ाइल देखें।

Volatility टीम को आर्ट ऑफ़ मेमोरी फोरेंसिक्स पुस्तक तथा Volatility चीट शीट के लिए धन्यवाद, जहाँ से इनमें से कई चेतावनी विचार आए थे!