当前位置:朝夕网 » 数码科技 » 黑客web渗透方式之xss跨站攻击

黑客web渗透方式之xss跨站攻击

程序的服务器由于其拥有丰富的资源、对外公开的特性和复杂的业务逻辑对于黑客来说往往拥有更大的吸引力和攻破的可能性。服务器没有对用户的输入做到充足的过滤,导致页面被嵌入恶意脚本在正常情况下,用户的请求会在页面中显示出来。代码,那么浏览器就会将它

相对于客户端,运行着 web 程序的服务器由于其拥有丰富的资源、对外公开的特性和复杂的业务逻辑对于黑客来说往往拥有更大的吸引力和攻破的可能性。

对于xss这一个漏洞十分感兴趣,或者出于各种各样的目的需要深入学习,其实绝大多数网络上博客、包括一些开源的工具,时效性较差,给初学者带来很多困扰和不必要的坑。 我仅以xss这个漏洞的名称来举例:本身这个漏洞的名字叫 corss site scripting 简写为css,但是之所以叫xss是因为css与web浏览器中解析的层叠样式表(css)重名,故取名xss。然而,cross site scripting 直译过来叫做跨站脚本攻击,其实这个名字本身也存在误导性。如今的web前端开发者应该都清楚,在现代浏览器的同源策略保护下,浏览器中的跨域行为受到了限制,并且其实从xss这个漏洞的攻击原理上讲,“跨站”这两个字其实真的没有什么必要。

请点击此处输入图片描述

跨站脚本攻击(XSS)

原理:

服务器没有对用户的输入做到充足的过滤,导致页面被嵌入恶意脚本

分类:

效果:

实现方式:

在可提交的输入框中构造输入,有时需要闭合引号,中括号等,有时需要对输入进行编码以绕过 WAF。

一般情况下,手动查找 XSS 注入点通常需要结合查看网页的源代码,找到自己的输入出现在了页面的哪个地方,然后根据该点附近的上下文构造恶意代码,比如,一个用 php 编写的页面为:

<? php $input = $_GET["param"]; echo "
".$input."
"; ?>

在正常情况下,用户的请求会在页面中显示出来。但是如果提供给 param 的参数是一段 HTML 代码,那么浏览器就会将它当做代码解析执行

值得注意的地方:

跨站请求伪造(CSRF)

原理:

由于

简单的身份验证只能保证请求发自某个用户的浏览器,却不能保证请求本身是用户自愿发出的

——维基百科

黑客web渗透方式之xss跨站攻击

用户访问完某个网站之后,浏览器会在一定时间内保存这个网站产生的 cookie,如果在这个 cookie 的有效期内,攻击者可以利用浏览器再次访问网站时会自动带上 cookie 的特性伪造请求,实现了 CSRF

效果:

可以执行任意在用户的权限内的操作

实现方式:

在可跨域的标签如img、iframe中构造恶意 url,或构造使用 post 方法的表单并诱导用户访问该页面,即可实现攻击

总结针对 web 程序的攻击方式,这些方式造成的后果不一,小到会话劫持,大到直接拿到服务器的管理员权限,这完全取决于 web 程序的安全设置,但从根本上来说,这些安全问题都是可以彻底避免的。

经测试,发现 User ID 的输入框中存在反射型的 XSS 漏洞,在该输入框中构造输入:test” onmouseover=prompt(100) bad=’,点击 Go 提交该输入后,在返回的页面中已被嵌入了恶意代码,当鼠标移动到 User ID 上后,会弹出一个提示框

请点击此处输入图片描述

XSS 后的页面

查看网页的源代码,可以发现 User ID 这个输入框确实被我们的输入控制了

XSS 后的页面和正常页面的源码比较

请点击此处输入图片描述

值得注意的地方

SQL 注入

原理:

服务器没有对用户的输入做到充分的过滤,导致可执行任意 SQL 语句

效果:

对于XSS的漏洞挖掘过程,其实就是一个使用Payload不断测试和调整再测试的过程,这个过程我们把它叫做Fuzzing;同样是Fuzzing,有些人挖洞比较高效,有些人却不那么容易挖出漏洞php 网页内容 如何 保存为 一张图片 支持下载,除了掌握的技术之外,比如编码的绕过处理等php 网页内容 如何 保存为 一张图片 支持下载,还包含一些技巧性的东西,掌握一些技巧和规律,可以使得挖洞会更加从容。

Fuzzing(模糊测试)是挖掘漏洞最常用的手段之一,不止是XSS,应该可以说Fuzzing可以用于大部分类型的漏洞挖掘。通俗可以把这种方式理解为不断尝试的过程。黑客入门书籍《网络黑白》t宝有

本文到此结束,希望对大家有所帮助!

免责声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如有侵权行为,请第一时间联系我们修改或删除,多谢。朝夕网 » 黑客web渗透方式之xss跨站攻击