作者:Leafer 本文屬於Arctic shell原創內容計划文章,轉載請注明原文地址!
比賽環境:純凈win10,最新版kali,securecrt或者WinSCP
在進入服務器后應進行的常規操作:
1備份網站文件
2 修改數據庫默認密碼
3 修改網頁登陸端一切弱密碼
4 查看是否留有后門賬戶
5 關閉不必要端口,如遠程登陸端口
6 使用命令匹配一句話特性
7 關注是否運行了“特殊”進程
8 權限高可以設置防火牆或者禁止他人修改本目錄
1 備份網站
tar -zcvf web.tar.gz /var/www/
2 修改數據庫密碼
速度戰:修改自己數據庫的密碼,你的即是他人的
使用命令mysql -u root -pxxxx進入數據庫
set PASSWORD = password(‘123456’);
如果在不知道數據庫密碼的情況下,
1 進入/etc/my.cnf,在mysqld 下面增加一行skip-grant-tables
2 保存完之后重啟服務。
3 直接輸入mysql -u root -p ,最后回車進入數據庫,根據流程來修改密碼
use mysql; 更改數據庫
UPDATE user SET PASSWORD =password(“mima”) WHERE USER = ‘root’; 重置密碼
flush privileges; 刷新系統權限相關表
4 刪除配置文件中的內容,重啟Mysql服務。
3查看是否有弱口令,更改一切弱口令
4 查看是否留有后門賬戶
查看自己的系統中是否有主辦方留下的后門賬戶。因為用戶的UID大於500的都是非系統賬號,500以下的都為系統保留的賬號,所以查看more /etc/passwd查看是否有后門賬戶。發現后門賬戶后userdel 命令刪除它。
5 關閉不必要端口,如遠程登陸端口
關閉不必要的端口,要求的服務端口不能關
netstat -anp #查看端口被哪個進程占用
kill -9 PID 殺掉進程
如
Netstat- anp | more 查看當前開啟了哪些端口
22端口對方開放了sshd服務,進程是4386
使用命令kill 4386殺死進程
如果對方的ssh端口沒有關閉的話,你可以使用ssh <-p 端口> 用戶名@IP 登陸人家的機器
6 使用命令匹配一句話特性
因為本環境中沒有d盾等軟件,只能使用命令來查找木馬
grep -r --include=*.php '[^a-z]eval($_POST' .
find /var/www/ -type f -name "*.php" | xargs grep "eval(" |more
7 關注是否運行了“特殊”進程
當對方已經通過ssh登入自己系統時,可以netstat -anp |more 查看鏈接服務的端口號
用kill -9 xxx 殺掉它
一開始進程是4634端口,可當我殺死它后,它自己換端口了,變成了4638,繼續殺死4638后才結束了鏈接,然后關閉22號端口,刪除登陸賬戶,避免他人再次登陸。
8 權限高可以設置防火牆或者禁止他人修改本目錄
如果擁有root權限的話(感覺不可能)可以使用chattr -R +i /var/www命令,讓所有人包括root都無法對文件夾進行修改刪除操作
可以使用lsattr查看此權限
使用chattr -R -i 取消此權限
參考鏈接:
https://www.anquanke.com/post/id/86984
https://edwardchoijc.github.io/CTF%E7%BA%BF%E4%B8%8BAWD%E7%BB%8F%E9%AA%8C%E6%80%BB%E7%BB%93.html