27 WEB漏洞-XSS跨站之代码及httponly绕过

news2025/4/8 20:33:44

目录

      • HttpOnly安全过滤测试
      • HttpOnly安全过滤绕过思路
    • 演示案例:
      • Xsslabs关卡代码过滤绕过测试

HttpOnly安全过滤测试

在这里插入图片描述
防止xss攻击,指的是攻击手法,并不是能防止XSS漏洞,httponly阻止的仅仅只是cookie

httponly在相关的脚本都是支持的,我们根据自己网站的脚本环境,有相当的开启方法

httponly开启方法:https://jingyan.baidu.com/article/5553fa82a8248c65a3393442.html

对方开启httponly,你在攻击盗取cookie失败的情况下,我们可以采取其它方案,我们需要的是登录后台的权限,后台权限里面有两种方式进入,一种是cookie获取进入后台,一种是直接账号密码登录进入后台,所以我们可以采取获取账号密码登录,一般网站管理者习惯在登录一些网站后台之后进行保存,防止下次登录还需要重新输入密码,比较麻烦,或者有些浏览器会自动保存;如果对方有进行这些操作,那我们可以利用xss漏洞对这些浏览器密码进行读取

像我们在登录地址输入账号,他直接补齐密码,这个就属于保存读取,就是浏览器已经记录了你之前登录的账号密码,如果没有保存就是让你重新输入密码;我们的攻击可以针对这两种情况进行攻击,如果对方是保存的话,我们可以读取对方保存的数据,如果说没保存的话,我们就采取表单劫持,这是两个概念

表单劫持就是相当于把数据在发送一份到跨站平台,就相当于提交的数据一份给了服务器,一份给了跨站平台,所以我们就能够接收到明文的账号密码,这个时候我们可以直接用明文的账号密码去登录他的账号,这是建立在未保存读取的攻击方式,但是这个攻击有个前提条件,就是产生在登录框,如果你的跨站没有产生在登录框这里,就相当于你攻击的话,需要把你的跨站语句写到对方的代码,或者执行相关的代码,才能够触发跨站

登录框这个地方一般是我们后台登录的地方,这个地方假如没有跨站的话,表单劫持这种方法是不可行的,因为我们的攻击语句已经写到了登录页面这里,我们在攻击的时候,要么在攻击页面,把跨站代码写进去,就是储存型跨站;要么在地址上面,构造一个触发地址,对方去访问它,触发这个跨站代码,所以它是有些前提条件的,如果说我们采取登录框表单劫持的话,那么跨站漏洞必定产生在登录的地方,如果是向前面的其它地方就不行,所以这个未保存读取利用起来比较鸡肋

如果是保存读取,说明账号密码是保存在浏览器的,在xss平台配置好需要浏览器记住的明文密码的策略配置
在这里插入图片描述
再重新登录账号,这个时候xss平台就会获取用户的明文账号和密码,有时候xss平台会有延迟,多等一会就好

HttpOnly安全过滤绕过思路

代码类过滤:Xsslabs

HttpOnly属性过滤防读取

绕过httponly:

浏览器未保存帐号密码:需要xss产生登录地址,利用表单劫持

浏览器保存帐号密码:产生在后台登录框的xss,存储型xss如留言等,浏览器读取帐号密码

在一些网站登录,大部分都会记住账号密码,只要是个人电脑、浏览器都会记住

演示案例:

Xsslabs关卡代码过滤绕过测试

php htmlspecialchars()函数将特殊字符转换为HTML实体
实体化是经常过滤xss的一种情况,我们只要把双引号闭合掉就可以了。

"><script>alert(1)</script>

尖括号不能用的话,我们可以用

' οnclick='alert(1)    ' οnmοuseοver='alert(/xss/)

事件属性,单击时就可以触发了。
找跨站点,我们一定要去分析,绕过也要去分析

" οnclick="alert(1)

过滤相关关键字,我们可以利用大小写绕过

"><a Href='javasCript:alert(1)'>

双写绕过

"><a HHREFref='javasCscriptript:alert(1)'>

他不是循环过滤,他是一次过滤,所以你让他过滤为空之后再写死就好了。

xss语句unicode编码绕过

&#74;&#97;&#118;&#97;&#83;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#39;&#49;&#39;&#41;

有的验证你得带有某些东西才可以,比如http://,我们可以两斜杆注释http://,然后让这个http://绕过过滤,然后利用编码绕过前面的过滤

&#74;&#97;&#118;&#97;&#83;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#39;&#49;&#39;&#41;//http://

我们是强调知识的全面性,那个东西重要是根据你自己的情况,有些人认为重要,有些人认为不重要,反正你认为重要,你就好点学,你认为不重要,就不学,这个根据大家自己的需求

数据隐藏,隐藏表单的属性值,把我们写入的xss语句给隐藏起来,让我们不知道自己代码写入到里面是什么组合,我们可以修改html代码的属性,把它修改成text属性,因为他以后面为准

&t_sort="type="text" οnclick="alert(1)"

type="text"是为了让框显示出来,好让鼠标去触发点击事件,不是这个type必须要写,其实不写也是能够正常执行的

像我前面讲的那些,在实战情况下,我们是碰不到的,是以后有些比赛,你学一下他的绕过思路,会比较好一些;但是在实战情况下,一些简简单单的绕过思路学一下就好了

网上的一些过关文章也可以去看,虽然他没有讲原理,我们去查一下资料应该是没有大问题的

PHP $_SERVER['HTTP_REFERER']   获取前一页面的 URL 地址

REFERER和xss关系不是很大,和csrf关系很大
可以在referer和user-agent中添加xss语句
xss和我们的注入是一样的,我们注入的时候可以通过post、get发送数据,也可以通过数据包里面的参数发送数据,只是说对方代码是怎么接收的,你就怎么发送,所以说漏洞的原理都是通用的

由于xss漏洞在实战情况下是需要别人配合的攻击,一般你盗取别人的cookie,去攻击别人,需要别人去触发这个漏洞才行,他不是像注入、上传主动的攻击,别人不知道你也能够攻击

学习xss绕过,大部分都是搞比赛的时候,可能会考这一点,如果在实战情况下,是不会这么绕的,它不会有这么多拦截,要么能绕过要么不能绕过

通过访问网站的数据包,修改数据里面的内容为跨站语句,来测试有没有跨站漏洞即可,这就是手工判断有么有跨站漏洞的最简单方法了

有时间xss平台可以自己去搭建一个

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1032015.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AMEYA360 | 罗姆ROHM面向工业设备应用的产品目录上线

作为半导体和电子元器件制造商&#xff0c;罗姆集团自成立后60多年以来&#xff0c;一直秉持“质量第一”的企业目的&#xff0c;为消费电子设备和IT设备、汽车以及工业设备等多个领域源源不断地提供高品质、可信赖的产品。 随着“节能”和“小型化”需求的不断高涨&#xff0c…

PLC项目调试常见的8种错误类型

各种品牌PLC都具有自我诊断功能&#xff0c;但PLC修理的技巧在于&#xff0c;充分运用该功能进行分析&#xff0c;然后精确寻找问题所在。整理了当PLC呈现反常报警时&#xff0c;PLC修理人员需要了解的8种常见错误类型。 CPU反常 CPU反常报警时&#xff0c;应查看CPU单元衔接于…

Qt中使用图像格式对QPainter绘制文字影响

图 1 是 QImage::Format_RGB888绘制效果&#xff0c;图二是QImage::Format_RGB32绘制效果&#xff0c;可见在使用QImage::Format_RGB32进行绘制文字效果更好&#xff0c;从现象提示我们&#xff0c;对QPainter在QImage改善文字绘制效果不仅可以设置抗锯齿&#xff0c;图像保存格…

STC15F104W控制3个74HC595芯片输出数码管显示

一、74HC595脚位图及说明 管脚说明&#xff1a; 14脚&#xff1a;DS&#xff08;SER&#xff09;&#xff0c;串行数据输入引脚 13脚&#xff1a;OE&#xff0c;输出使能控制脚&#xff0c;它是低电才使能输出&#xff0c;所以接GND 12脚&#xff1a;RCK&#xff08;STCP&…

C语言每日一题(10):无人生还

文章主题&#xff1a;无人生还&#x1f525;所属专栏&#xff1a;C语言每日一题&#x1f4d7;作者简介&#xff1a;每天不定时更新C语言的小白一枚&#xff0c;记录分享自己每天的所思所想&#x1f604;&#x1f3b6;个人主页&#xff1a;[₽]的个人主页&#x1f3c4;&#x1f…

Mojo编程语言是AI人工智能的新的编程语言

Mojo是Chris Lattner的创业公司Modular开发的一种新的编程语言&#xff0c;旨在统一AI基建和异构计算。Mojo被认为是Python的超集&#xff0c;兼容Python生态&#xff0c;但添加了系统编程和编译期优化的特性&#xff0c;以提高性能和部署效率。Mojo基于MLIR&#xff0c;可以支…

RockTree TOKEN2049 Party爆火,一场千亿规模的“超级聚会”

今年 9 月 11 日至 17 日期间&#xff0c;在新加坡举办的 TOKEN2049 大会&#xff0c;成为了今年同类活动中规模最大、最火爆的一次 Web3 行业盛会。据悉&#xff0c;本届 TOKEN2049 迎来了来自 3,500 多个组织超 10,000 名与会者&#xff0c;并有一众重磅加密行业嘉宾出席会议…

Android 混淆使用及其字典混淆(Proguard)

1.使用背景 ProGuard能够通过压缩、优化、混淆、预检等操作&#xff0c;检测并删除未使用的类,字段,方法和属性&#xff0c;分析和优化字节码&#xff0c;使用简短无意义的名称来重命名类&#xff0c;字段和方法。从而使代码更小、更高效、更难进行逆向工程。 Android代码混淆…

实时数仓混沌演练实践

一、背景介绍 目前实时数仓提供的投放实时指标优先级别越来越重要&#xff0c;不再是单独的报表展示等功能&#xff0c;特别是提供给下游规则引擎的相关数据&#xff0c;直接对投放运营的广告投放产生直接影响&#xff0c;数据延迟或者异常均可能产生直接或者间接的资产损失。…

【项目总结】C++ 云盘

项目介绍 本项目是一款分布式云存储软件&#xff0c;旨在提供强大的文件存储和共享功能。 因为要运行高并发量的访问&#xff0c;所以进行了服务器的集群&#xff0c;也就是要有多台web服务器&#xff0c;每台web服务器中部署相同的程序&#xff0c;为了让这几台web服务器的负…

【VSCode 插件商城无法搜索到插件的解决方法】

背景 因为本地电脑安装的开发软件较多&#xff0c;导致电脑变得很卡&#xff0c;所有申请一个虚拟机作为开发机&#xff0c;安装完VScode之后发现无法搜索到插件&#xff0c;于是便想把本地电脑上VScode装好的插件复制到虚拟机上。 实现 VSCode 的插件存在 【C/用户/用户名/…

关于ubuntu设置sh文件开机自启动python3和sudo python3问题

关于ubuntu设置sh文件开机自启动python3和sudo python3问题 说明系统为 ubuntu22.04python是python3.10.12ros系统为ros2 humble 背景解决方法补充 说明 系统为 ubuntu22.04 python是python3.10.12 ros系统为ros2 humble 背景 将一个py文件设置为开机自启动&#xff0c;服…

如何对pdf文件进行压缩?

如何对pdf文件进行压缩&#xff1f;一般来说&#xff0c;PDF文件里面一般会包含大量的图像、文本和其他类型的独裁&#xff0c;这使得它们的文件大小相对于其他文档要大得多&#xff08;其实主要是pdf文件里面包含的大量图片&#xff0c;尤其是高清拖&#xff09;。由于pdf文件…

Tiny11:极限精简的Windows 11系统镜像,老旧电脑的福音(移除Windows11安装要求限制,且支持苹果ARM架构CPU,全版本资源下载)

文章目录 优点和适用场景系统下载系统版本说明系统安装Tiny11 设置安装简体中文语言方法Windows 11,作为微软最新一代操作系统,固然有其强大的功能和卓越的性能,但有时,更轻、更小、更快速的需求也在用户的考虑范围之内。这就是Tiny11存在的理由。Tiny11是基于Windows 11的…

【收藏】如何最快取得NISP二级和CISP

【收藏】如何最快取得NISP二级和CISP &#x1f449;今天小编来给大家讲解一下如何最快的取得NISP二级和CISP证书 ✅我们从如下几个方面为大家讲解&#xff1a; &#x1f53a;报名条件 &#x1f53a;考试形式 &#x1f53a;考试题型 &#x1f53a;如何备考 &#x1f53a;证书用途…

Wish下单支付教程,测评养号需要满足哪些技术要点?

Wish是2011年成立的一家高科技独角兽公司&#xff0c;有90%的卖家来自中国&#xff0c;也是北美和欧洲最大的移动电商平台。 它使用一种优化算法大规模获取数据&#xff0c;并快速了解如何为每个客户提供最相关的商品&#xff0c;让消费者在移动端便捷购物的同时享受购物的乐趣…

C# VS CS1752解决办法

代码报错&#xff1a; Severity Code Description Project File Line Suppression State Error CS1752 项目文件行抑制状态 错误cs1752无法嵌入互操作类型“ActUtlTypeClass”。 将引用的dll打开其属性 选择属性&#xff0c;将嵌入互操作类型改为false即可。

Java多线程篇(4)——wait/notify和park/unPark

文章目录 Object - wait/notifyobject.wait()object.notify() LockSupport - park/unparkLockSupport.park()LockSupport.unPark() Object - wait/notify object.wait() ObjectSynchronizer::wait 从这段代码可以得到两个信息 1&#xff1a;wait() 底层是对象锁&#xff08;就…

You must install .NET Desktop Runtime to run this application

使用.Net6 写了个小程序&#xff0c;放到另一台机器上报这个错。 安装 x64的Desktop Runtime 安装 x86的Desktop Runtime 安装 x64的 .Net6 SDK 安装 x86的 .Net6 SDK 均无效&#xff0c;还是报这个错。 最后发现问题是因为生成目录里有一个 xxx.runtimeconfig.json 的文…

23年下考前须知-软考中级信息安全工程师

信息安全工程师主要涉及计算机信息安全方面&#xff0c;在计算机软硬件、网络、应用相关领域从事安全系统设计、安全产品开发、产品集成、信息系统安全检测与审计等方面工作&#xff0c;服务单位可以是国家机关、企事业单位及科研教学单位等。 一、考试报名时间 信安考试一年…