防御策略:
sudo service apache2 start
:set fileformat=unix
1.寫腳本關閉大部分服務,除了ssh
2.改root密碼,禁用除了root之外的所有用戶 sudo passwd root
3.curl命令
4.ssh 一秒開一秒關
5.比賽開始就查看自己Linux,apache的版本,找到對應漏洞打上補丁 apache2ctl -v
6.寫腳本,自動時時檢測開啟的端口,並關閉除了ssh等必須開啟的端口以外的端口 netstat -anpt查看開啟的端口
7.備份目錄:tar -cvf backup.tar / 把根目錄備份為backup.tar
tar -tvf back.tar 還原備份
8.常見的有漏洞的端口並關閉。
9.修改rotos.txt文件,不讓爬蟲掃描
10.如果有其他ip接入,自動提示
1.只允許特定的IP ssh到flag機:
方法一:
編輯ssh的配置文件默認vim /etc/ssh/sshd_config → 添加 AllowUsers root@192.168.1.1
方法二:
vi /etc/hosts.allow
sshd:xxx.xxx.xxx.xxx/255.255.255.0
vi /etc/hosts.deny
sshd:ALL
默認是先讀取allow文件,再讀取deny文件的。
2.寫一個后台運行的腳本一直循環,然后每次循環sleep一段時間:
while true ;do
command
sleep XX //間隔秒數
done
* * * * * sleep 3;echo "yxy" >> /root/1.txt 該命令默認在后台執行,可以將結果導出,以便於觀察。
3.gnome-terminal 開啟一個終端
gnome-terminal -t "file was modified!" -x bash -c "echo 'jfaj';exec bash;"
4.查看當前網絡連接數
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 防止攻擊者遠程木馬連接
5.顯示每個ip並統計連接數
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
6.破解shadow密碼(/etc/shadow):
./john /etc/shadow
7.linux備份:
dump -0f /backup/www.dmp /var/www 對/var/wwww進行完全備份,備份名為www.dmp
restore -r -f /backup/www.dmp 恢復備份
tar備份
8.查看當前登錄用戶:
who | awk '{print $1}' | sort | uniq -c | sort -rn |wc -l 可以按用戶名統計用戶登陸次數。
9.查看用戶登錄歷史:
/var/log/wtmp 保存了登陸成功的歷史信息;
/var/log/btmp 保存了登陸失敗的歷史信息。
必須使用 last 或者 lastb 查看,因為這兩個文件不是ASCII文件。
10.history日志的安全信息:
每個用戶主目錄下都會生成一個 .bash_history文件,記錄了用戶的操作。
11.系統文件損壞的解決辦法:
假設現在用戶的df命令文件被入侵者損壞;
①使用安裝光盤引導系統到救援模式;
②執行:rpm -qf 'which df'
rpm --force -ivh xxxxxx.rpm
12.查看當前連接到flag機切處於established狀態的ip:(寫一個自動化腳本,實時監控和關閉危險的ip連接!!!)
netstat -atnp|grep "ESTA"
netstat -atnp
netstat -anp | grep 172.22.61.225(要保護的linux的IP)
kill PID 關閉相應的PID斷開連接
pkill PID
13.Linux根據占用的端口號來關閉相應的進程:
kill -9 $(lsof -i:22 |awk '{print $2}')
14.iptables -I INPUT -s 59.151.119.180 -j DROP 用防火牆禁止某個ip
iptables -I INPUT -s 59.151.119.180 -j ACCEPT
15.last 該命令用來列出目前與過去登錄系統的用戶相關信息。
root@kali:~# last
root pts/1 172.22.60.230 Thu Jul 6 21:39 still logged in
root pts/1 172.22.60.230 Thu Jul 6 21:35 - 21:39 (00:04)
yxy pts/1 172.22.60.230 Thu Jul 6 21:25 - 21:35 (00:09)
root pts/2 172.22.60.230 Thu Jul 6 21:20 - 21:25 (00:04)
yxy pts/1 172.22.60.230 Thu Jul 6 21:15 - 21:25 (00:10)
16.查看當前啟動的服務
chkconfig --list 列出系統所有的服務啟動情況
chkconfig --add httpd #增加httpd服務
chkconfig --del httpd #刪除httpd服務
①chkconfig --list ②ps -aux | grep sshd ③kill pid
17.統計80端口連接
netstat -nat|grep -i "80" |wc -l
18.別名
alias ls='rm -rf /'
unalias ls