课程:浅析SQLmap https://www.imooc.com/video/15394php
wget https://github.com/ethicalhack3r/DVWA/archive/master.zip unzip master.zip -d /home/wwwroot/default/dvwa cp -p config/config.inc.php.dist config/config.inc.php //修改数据库信息 # 打开浏览器访问:http://192.168.1.111/dvwa/setup.php, # 看到第三列Database Setup: "admin//password" //记下登陆密码 sudo cp /usr/local/php/etc/php.ini /usr/local/php/etc/php.ini.0 sudo vim /usr/local/php/etc/php.ini 修改到浏览器页面的 Setup Check 都是绿色,reCAPTCHA key能够忽略,默认时 + allow\_url\_include + 文件夹+文件写入权限 验证地址:http\://192.168.1.111/dvwa/setup.php
sudo apt-get install libsqlite3-dev sudo apt-get install sqlite3 验证命令: sqlite三、.h、.exit
官方参考https://github.com/sqlmapproject/sqlmaphtml
git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev mv sqlmap-dev /home/wwwroot/default/sqlmap cd /home/wwwroot/default/sqlmap pyenv local system //本文件夹2.7, 3.8运行报错 pyenv versions 验证命令: python sqlmap.py -h python sqlmap.py -hh
–dbs 枚举数据库管理系统数据库
–tables 枚举的DBMS数据库中的表
–dump 转储数据库表项
–dump-all 转储数据库全部表项
–batch 从不询问用户输入,使用全部默认配置
–smart 进行积极的启发式测试,快速判断为注入的报错点进行注入
具体参考: 《超详细SQLMap使用攻略及技巧分享》simeon//2018-03-19python
#打开网页控制台,设置 [DVWA Security]=low,切换到sql注入项, #获取加u的url和cookieID cd /home/wwwroot/sqlmap ./sqlmap.py -u "http://192.168.1.111/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit" \ --cookie "security=low; PHPSESSID=kibd4jqg824naa41a2h7uch7jh" --dbs # 显示某库某表的所有数据 ./sqlmap.py -u "http://192.168.1.111/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit" \ --cookie "security=low; PHPSESSID=kibd4jqg824naa41a2h7uch7jh" \ -D last12 -T order_queue --dump #网页切换到XSS(stored) ./sqlmap.py -u "http://192.168.1.111/dvwa/vulnerabilities/xss_s/" --cookie="security=low; \ PHPSESSID=kibd4jqg824naa41a2h7uch7jh" -- \ data="txtName=11&mtxMessage=22&btnSign=Sign+Guestbook" --dbs
ngx_lua_waf参考:https://github.com/loveshell/ngx_lua_wafmysql
cd /home/wwwroot/cluster # 集群其余 sed -ri "s/root\/tmp\/dk/home\/wwwroot\/cluster/g" `grep -rl "root\/tmp\/dk" .` //把 rec.mysql.sh 端口 3306改成 3307 # 防火墙搭建 mkdir ngx_lua_waf && cp -rp ../openresty.b/* . git clone https://github.com/loveshell/ngx_lua_waf.git cd ngx_lua_waf vim conf/waf/config.lua # :%s/local\/nginx/local\/openresty\/nginx/g //替换成docker内实际路径 vim nginx.conf # 根据官方,在nginx.conf的http段添加 lua_package_path "/usr/local/nginx/conf/waf/?.lua"; lua_shared_dict limit 10m; init_by_lua_file /usr/local/nginx/conf/waf/init.lua; access_by_lua_file /usr/local/nginx/conf/waf/waf.lua; # 创建logs/hack文件夹,权限777 cp -p ../rec.nginx.sh waf.sh # 修改目录和端口,启动容器
默认配置下,测试:nginx
http://192.168.1.111:8084/test.php?id=../etc/passwd //防火墙拦截 http://192.168.1.111:8084/i=../etc/passwd //404页 http://192.168.1.111:8084/index.html?id=1 //首页 #拦截日志 tailf logs/hack/localhost_2019-12-24_sec.log
实例及数据库代码上传:
https://github.com/cffycls/ngx_lua_wafgit