DVWA 攻防筆記(一) 介紹及安裝
阿新 • • 發佈:2018-12-25
container script down 環境 apt 跨站 ted 編程 維護
原本是像寫一篇 SELinux 的文章的。而我寫總結文章的時候,總會去想原因是什麽,為什麽會有這種需求。而我發覺 SELinux 的需求是編程人員的神奇代碼或者維護者的腦袋短路而造成系統容易被攻擊。就想找個充滿漏洞的系統來證明 SELinux 的必要性。就找到了 DVWA 。因為它存在很多方面的漏洞,而且還有不同級別的攻擊方式,覺得還挺好玩的。。。所以就不如開發一遍新大陸,把攻防兩端的手段也記錄一下。
DVWA 介紹
DVWA 就是個充滿漏洞的系統, 全稱是 Damn Vulnerable Web Application(該死的充滿漏洞的網絡應用),漏洞大體有這麽幾個:
- Brute Force(暴力(破解))
- Command Injection(命令行註入)
- CSRF(跨站請求偽造)
- File Inclusion(文件包含)
- File Upload(文件上傳)
- Insecure CAPTCHA(不安全的驗證碼)
- SQL Injection(SQL註入)
- SQL Injection(Blind)(SQL盲註)
- XSS(Reflected)(反射型跨站腳本)
- XSS(Stored)(存儲型跨站腳本)
而且還有級別的
- 低級:這安全級別非常容易受到攻擊,毫無安全措施可言。它的作用是,用錯誤的編碼讓 Web應用程序的漏洞表現出來,並作為教授或者學習基本開發技術的平臺。
- 中級:這個級別,開發人員會嘗試保護但是失敗。。。主要是提供一些不良代碼實踐
- 高級:這選項是中級難度的擴展,會混用更難攻擊的代碼或者替換不良代碼來嘗試保護。該漏洞可能不允許相同程度的利用(exploitation),類似於各種 Capture The Flags(CTFs)競賽。
- 不可能。這個級別應該可以抵禦所有漏洞。這是用來將有漏洞的代碼和安全性代碼做對比的。
看完這些介紹是否覺得有點像玩電子遊戲,有不同級別的挑戰,有各種的成就。
安裝
以前安裝覺得還是有點麻煩的,我之前也沒怎麽寫過 php。。。so 感謝大殺器 docker。
# 因為 80 端口我給了本機的 ngnix docker run --rm -it -p 5678:80 vulnerables/web-dvwa
而進入到 docker 裏面可以這樣。 先用獲取容器的 id
sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
56e69b5b67b6 vulnerables/web-dvwa "/main.sh" 26 hours ago Up 26 hours 0.0.0.0:5678->80/tcp
再進入
sudo docker exec -it 56e69b5b67b6 bash
來看看它默認的環境 查看發行版
cat /etc/issue
Debian GNU/Linux 8
Apache 進程信息
ps -aux | grep "httpd"
root 706 0.0 0.0 11132 1036 ? S+ 00:25 0:00 grep httpd
你看得沒錯,root 用戶進程 再根據 Debian 的 SELinux 設置
check-selinux-installation
bash: check-selinux-installation: command not found
應該是沒有安裝 SELinux的。
KaliLinux
對了說起網絡安全, 想起了一個專門給滲透用的 Linux 發行版 KaliLinux ,預裝了很多滲透用的的工具(有些工具還挺難裝的),之後會用到的。而我選擇用虛擬機,或許官方也知道很多人用虛擬機吧,官方專門有虛擬機的鏡像文件下載(密碼默認是 toor)
最後
接下來會先從低級開始探索吧,先搞最低級的所有漏洞。對網絡漏洞和不安全的代碼有大致的了解,再每種漏洞深入探索吧。enjoy。
DVWA 攻防筆記(一) 介紹及安裝