作為一名網(wǎng)絡(luò)安全工作者,一說到滲透測試,所有人都會(huì)想到Kali Linux,Kali Linux系統(tǒng)是一款預(yù)裝了許多滲透測試軟件的Linux系統(tǒng),是最常用的一款滲透測試系統(tǒng)工具,既然是一款Linux系統(tǒng),那么要利用Kali Linux系統(tǒng)進(jìn)行滲透測試,就必須掌握必要的Linux命令,下面我就根據(jù)自己的一些經(jīng)驗(yàn)和網(wǎng)上搜集的相關(guān)資料,整理了一下滲透測試常用的Linux命令,給大家分享一下,希望對(duì)大家有所幫助。
Kali Linux
一、系統(tǒng)信息命令
whoami 顯示Linux系統(tǒng)當(dāng)前已登陸的用戶;
id 顯示顯示當(dāng)前已登錄的用戶和組;
last 顯示最后一次登陸的用戶;
mount 顯示已掛載的驅(qū)動(dòng);
echo "user:passwd" | chpasswd 用一行命令重置密碼;
getent passwd 列出 Linux 上的用戶;
strings /usr/local/bin/blah 顯示非文本文件的內(nèi)容,例如:一個(gè)二進(jìn)制文件里面有什么;
PATH=$PATH:/my/new-path 添加一個(gè)新的路徑,方便進(jìn)行本地文件系統(tǒng)(FS)操作;
history 顯示用戶在之前執(zhí)行的 bash 腳本歷史記錄,還有敲入的命令。
二、檢查配置命令
netstat -tulpn 在 Linux 中顯示對(duì)應(yīng)了進(jìn)程ID(PID)的網(wǎng)絡(luò)端口;
watch ss -stplu 通過套接字實(shí)時(shí)觀察 TCP, UDP 端口;
lsof -i 顯示確認(rèn)了的連接;
macchanger -m MACADDR INTR 在 KALI Linux 上修改 MAC 地址;
ifconfig eth0 192.168.2.1/24 在 Linux 中設(shè)置 ID 地址;
ifconfig eth0:1 192.168.2.3/24 在 Linux 中向現(xiàn)有的網(wǎng)絡(luò)接口添加 IP 地址;
ifconfig eth0 hw ether MACADDR 使用 ifconfig 修改 Linux 中的 MAC 地址;
ifconfig eth0 mtu 1500 在 Linux 中使用 ifconfig 修改 MTU 的大小,將 1500 改為你想要的 MTU;
dig -x 192.168.1.1 對(duì) IP 地址進(jìn)行反向查找;
host 192.168.1.1 在一個(gè) IP 地址上進(jìn)行反向查找,適用于沒有安裝 dig 的情況;
dig @192.168.2.2 domain.com -t AXFR 使用 dig 執(zhí)行一次 DNS 區(qū)域傳輸;
host -l domain.com nameserver 使用 host 執(zhí)行一次 DNS 區(qū)域傳輸;
nbtstat -A x.x.x.x 獲取 IP 地址對(duì)應(yīng)的域名;
ip addr add 192.168.2.22/24 dev eth0 向 Linux 添加一個(gè)隱藏的 IP 地址,在執(zhí)行 ifconfig 命令時(shí)不會(huì)顯示這個(gè) IP 地址;
tcpkill -9 host google.com 阻止從主機(jī)訪問 google.com;
echo "1" > /proc/sys/net/ipv4/ip_forward 啟用 IP 轉(zhuǎn)發(fā),將 Linux 盒子變成一個(gè)路由器——這樣就方便通過這個(gè)盒子來進(jìn)行路由流量的控制;
echo "8.8.8.8" > /etc/resolv.conf 使用 Google 的 DNS。
Linux
三、用戶管理命令
useradd new-user 創(chuàng)建一個(gè)新的 Linux 用戶;
passwd username 重置 Linux 用戶密碼, 如果你是 root 用戶,只要輸入密碼就行了;
deluser username 刪除一個(gè) Linux 用戶。
四、解壓縮命令
unzip archive.zip 在 Linux 上提取 zip 包中的文件;
zipgrep *.txt archive.zip 在一個(gè) zip 壓縮包中搜索;
tar xf archive.tar 在 Linux 上提取 tar 包中的文件;
tar xvzf archive.tar.gz 在 Linux 上提取 tar.gz 包中的文件;
tar xjf archive.tar.bz2 在 Linux 上提取 tar.bz2 包中的文件;
tar ztvf file.tar.gz | grep blah 在一個(gè) tar.gz 文件中搜索;
gzip -d archive.gz 在 Linux 上提取 gzip 中的文件;
zcat archive.gz 在 Linux 以不解壓縮的方式讀取一個(gè) gz 文件;
zless archive.gz 用較少的命令實(shí)現(xiàn)對(duì) .gz 壓縮包相同的功能;
zgrep 'blah' /var/log/maillog*.gz 在 Linux 上對(duì) .gz 壓縮包里面的內(nèi)容執(zhí)行搜索,比如搜索被壓縮過的日志文件;
vim file.txt.gz 使用 vim 讀取 .txt.gz 文件;
upx -9 -o output.exe input.exe 在 Linux 上使用 UPX 壓縮 .exe 文件。
五、壓縮命令
zip -r file.zip /dir/* 在 Linux 上創(chuàng)建一個(gè) .zip 文件;
tar cf archive.tar files 在 Linux 上創(chuàng)建一個(gè) tar 文件;
tar czf archive.tar.gz files 在 Linux 上創(chuàng)建一個(gè) tar.gz 文件;
tar cjf archive.tar.bz2 files 在 Linux 上創(chuàng)建一個(gè) tar.bz2 文件;
gzip file 在 Linux 上創(chuàng)建一個(gè) .gz 文件。
六、文件目錄
df -h blah 在 Linux 上顯示文件/目錄的大小;
diff file1 file2 在 Linux 上比對(duì)/顯示兩個(gè)文件之間的差別;
md5sum file 在 Linux 上生成 MD5 摘要;
md5sum -c blah.iso.md5 在 Linux 上檢查文件的 MD5 摘要,這里假設(shè)文件和 .md5 處在相同的路徑下;
file blah 在 Linux 上查找出文件的類型,也會(huì)將文件是 32 還是 64 位顯示出來;
dos2unix 將 Windows 的行結(jié)束符轉(zhuǎn)成 Unix/Linux 的;
base64 < input-file > output-file 對(duì)輸入文件進(jìn)行 Base64 編碼,然后輸出一個(gè)叫做 output-file 的 Base64 編碼文件;
base64 -d < input-file > output-file 對(duì)輸入文件進(jìn)行 Base64 解碼,然后輸出一個(gè)叫做 output-file 的 Base64 解碼文件;
touch -r ref-file new-file 使用來自于引用文件的時(shí)間戳數(shù)據(jù)創(chuàng)建一個(gè)新文件,放上 -r 以簡單地創(chuàng)建一個(gè)文件;
rm -rf 不顯示確認(rèn)提示就刪除文件和目錄。
滲透測試
七、Misc命令
init 6 從命令行重啟 Linux ;
gcc -o output.c input.c 編譯 C 代碼;
gcc -m32 -o output.c input.c 交叉編譯 C 代碼,在 64 位 Linux 上將編譯出 32 位的二進(jìn)制文件;
unset HISTORYFILE 關(guān)閉 bash 歷史日志記錄功能;
rdesktop X.X.X.X 從 Linux 連接到 RDP 服務(wù)器;
kill -9 $$ 關(guān)掉當(dāng)前的會(huì)話;
chown user:group blah 修改文件或者目錄的所有者;
chown -R user:group blah 修改文件或者目錄,以及目錄下面文件/目錄的擁有者 —— 遞歸執(zhí)行chown;
chmod 600 file 修改文件/目錄的權(quán)限設(shè)定, 詳情見 [Linux 文件系統(tǒng)權(quán)限](#linux-file-system-permissions) ;
八、文件權(quán)限
777 rwxrwxrwx 沒有限制,完全可讀可寫可執(zhí)行(RWX),用戶可以做任何事情;
755 rwxr-xr-x 擁有者可完全訪問,其他人只能讀取和執(zhí)行文件;
700 rwx------ 擁有者可完全訪問,其他人都不能訪問;
666 rw-rw-rw- 所有人可以讀取和寫入,但不可執(zhí)行;
644 rw-r--r-- 擁有者可以讀取和寫入,其他人只可以讀取;
600 rw------- 擁有者可以讀取和寫入,其他人都不能訪問。
九、重要文件/目錄
/etc/passwd 包含了本地 Linux 的用戶;
/etc/shadow 包含了哈希過的本地賬戶密碼;
/etc/group 包含了本地賬戶分組;
/etc/init.d/ 包含了服務(wù)網(wǎng)初始化腳本 – 具體都安裝了些啥應(yīng)該值得一瞧;
/etc/hostname 系統(tǒng)的 hostname;
/etc/network/interfaces 網(wǎng)絡(luò)接口;
/etc/resolv.conf 系統(tǒng)的 DNS 服務(wù);
/etc/profile 系統(tǒng)的環(huán)境變量;
~/.ssh/ SSH 密鑰;
~/.bash_history 用戶的 bash 歷史日志;
/var/log/ Linux 系統(tǒng)的日志文件一般就被存放在這里;
/var/adm/ UNIX 系統(tǒng)的日志文件一般就被存在在這里;
/var/log/httpd/access.log Apache 訪問日志文件通常的存在路徑;
/etc/fstab 掛載的文件系統(tǒng)。
以上就是我總結(jié)的滲透測試常用Linux命令,歡迎關(guān)注@科技興了解更多科技尤其是網(wǎng)絡(luò)安全方面的知識(shí)。