当前位置: 首页 > wzjs >正文

网站建设手机apphtml自我介绍代码

网站建设手机app,html自我介绍代码,PHP做网站的核心是什么,从零开始学习网络营销目录 一、源码分析 1、进入靶场 2、代码审计 3、攻击思路 二、渗透实战 1、探测过滤信息 2、注入Payload1 3、注入Payload2 4、注入Payload3 本系列为通过《pikachu靶场通关笔记》的XSS关卡(共10关)渗透集合,通过对XSS关卡源码的代码审计找到安…

目录

一、源码分析

1、进入靶场

2、代码审计

3、攻击思路

二、渗透实战

1、探测过滤信息

2、注入Payload1

3、注入Payload2

4、注入Payload3 


本系列为通过《pikachu靶场通关笔记》的XSS关卡(共10关)渗透集合,通过对XSS关卡源码的代码审计找到安全风险的真实原因,讲解XSS原理并进行渗透实践,本文为XSS关卡第07关XSS过滤关卡的渗透部分。

一、源码分析

1、进入靶场

打开pikachu靶场第07关XSS过滤,完整URL地址如下所示,这是一个输入框页面,如下所示。

http://127.0.0.1/pikachu/vul/xss/xss_01.php

2、代码审计

查看xss_01.php源码内容,如下所示使用preg_replace函数对输入参数进行了简单过滤,具体如下所示。

不过,尽管代码尝试使用正则表达式过滤<script> 标签,但仍然存在 XSS安全风险,原因如下:

  • 正则匹配不全面:正则表达式仅对<script>标签进行匹配替换,攻击者可以利用其他 HTML 标签或 JavaScript 事件来注入恶意脚本。例如,使用 <img> 标签的 onerror 事件、<body> 标签的 onload 事件等,这些情况不会被当前的正则表达式匹配到。
  • 大小写和编码绕过:攻击者可以使用不同的大小写组合(如<ScRiPt> )来绕过正则匹配,因为当前正则表达式对大小写敏感且未处理编码情况。

我们对关键源码进行详细注释,具体如下所示。

<?php
// 初始化一个空字符串变量 $html,用于存储后续要输出的 HTML 内容
$html = '';// 检查 $_GET 数组中是否存在名为 'submit' 的元素,并且是否存在名为 'message' 的元素且其值不为 null
// 即判断用户是否通过 GET 请求提交了 'submit' 参数,同时也提交了 'message' 参数且该参数有值
if (isset($_GET['submit']) && $_GET['message'] != null) {// 使用正则表达式对用户提交的 'message' 参数进行过滤处理// 正则表达式 '/<(.*)s(.*)c(.*)r(.*)i(.*)p(.*)t/' 尝试匹配任何包含 <script> 标签的字符串// 无论 <script> 标签中的字母是否被其他字符分隔,都会被匹配到// preg_replace 函数将匹配到的内容替换为空字符串,即过滤掉所有类似 <script> 的标签$message = preg_replace('/<(.*)s(.*)c(.*)r(.*)i(.*)p(.*)t/', '', $_GET['message']);// 检查经过过滤后的 'message' 参数的值是否等于 'yes'if ($message == 'yes') {// 如果等于 'yes',向 $html 变量中追加一段提示信息$html .= "<p>那就去人民广场一个人坐一会儿吧!</p>";} else {// 如果不等于 'yes',向 $html 变量中追加一段提示信息,其中包含用户输入的 'message' 内容$html .= "<p>别说这些'{$message}'的话,不要怕,就是干!</p>";}
}
?>

3、攻击思路

攻击者可以构造如下恶意输入进行攻击:

  • 利用 HTML 事件:构造类似 <img src="nonexistent.jpg" οnerrοr="alert('XSS')"> 的输入,当页面显示该内容时,由于 src 属性指向的图片不存在,会触发 onerror 事件,从而执行其中的 JavaScript 代码。
  • 大小写绕过:输入 <ScRiPt>alert('XSS')</ScRiPt>,由于正则表达式对大小写敏感,该输入不会被过滤,页面会执行其中的恶意脚本。

二、渗透实战

1、探测过滤信息

输入关键字判断是否有过滤,关键字包括:单引号、双引号、左右尖括号、问号、&、字符串以及数字<script>'">?&ljn20241019,如下所示发现 <script> 被过滤了

这说明本关卡存在XSS过滤,将关键字script过滤了,这与我们源码分析的结果一致。 

2、注入Payload1

大小写绕过

<sCriPt>alert('ljn')</ScripT>

<ScRiPT>alert("ljn")</ScRIPT>

3、注入Payload2

使用非 script关键字的js脚本进行渗透,如下所示。

<a herf="#" οnclick=" alert('ljn')">

点击链接后弹框“ljn”,说明渗透成功,具体如下所示。

4、注入Payload3 

输入非 script关键字的js脚本<img src="nonexistent.jpg" οnerrοr="alert('ljn')">

<img src="nonexistent.jpg" onerror="alert('ljn')">

由于我们的注入语句种src 属性指向的图片不存在,会触发 onerror 事件,从而执行其中的 XSS代码弹出“ljn”,如下所示渗透成功。 


文章转载自:

http://1fXh0TKT.wbyqy.cn
http://EhinF5Qf.wbyqy.cn
http://lWZo8gzQ.wbyqy.cn
http://6Ce3c515.wbyqy.cn
http://Vlt4kjCi.wbyqy.cn
http://o37fWzfq.wbyqy.cn
http://9kKZZ39X.wbyqy.cn
http://XOs5RPsg.wbyqy.cn
http://0PUqkFKv.wbyqy.cn
http://x4setfRu.wbyqy.cn
http://F3U0L94R.wbyqy.cn
http://dbTPNWhU.wbyqy.cn
http://XbUuAsxy.wbyqy.cn
http://wh2Ci70t.wbyqy.cn
http://p9TS7Gvv.wbyqy.cn
http://jQJP6Pda.wbyqy.cn
http://6KGeQrlq.wbyqy.cn
http://IfB4yOTa.wbyqy.cn
http://0NzupWH2.wbyqy.cn
http://wx2UKuNr.wbyqy.cn
http://M6NeOD4v.wbyqy.cn
http://KNj41kRG.wbyqy.cn
http://ebm3MOQt.wbyqy.cn
http://EzNvoEKl.wbyqy.cn
http://Oz0T1q56.wbyqy.cn
http://Lg5jgIva.wbyqy.cn
http://uSxpBneY.wbyqy.cn
http://eY5m9wIG.wbyqy.cn
http://QD9Uc6Fi.wbyqy.cn
http://CylUP797.wbyqy.cn
http://www.dtcms.com/wzjs/599947.html

相关文章:

  • 教研室网站建设大美互助app
  • 大淘客构建自己的网站网上交易系统
  • 做网站出路哪家公司建网站好
  • 网站html模板下载深圳网站建设公司哪家好
  • 做美食直播哪个网站最好免费空间最大的网盘
  • 网站建设 合同网页编辑岗位职责
  • 网站后台编辑技巧溧阳市城乡建设局网站
  • 阿里建站平台官网图片上传 网站建设教学视频教程
  • 柒零叁网站建设网上商城如何做起来
  • 商务网站的建设与管理wordpress mysql 配置
  • 网站的盈利模式龙华住房与建设局网站
  • vps如果制作论坛网站百度推广怎么看关键词排名
  • 淘宝网站的建设内容如何把自己的网站推广
  • 淘宝客网站一定要备案长春关键词seo
  • cpc引流做网站cpa推广做邀请函好的网站
  • 海外网站开发成都建设网官方网站
  • 青岛南丰网站建设公司网站的排版好看
  • 网站推广 英文搭建小程序的方式有几种
  • 朝阳市网站制作网站开发与维护是干什么的
  • 广州官方网站建设qq自动发货平台网站怎么做
  • iis8 wordpressseo好seo
  • 网站没做好可以备案吗国际网站卖东西怎么做
  • 广东网站建设968溧阳网站优化
  • 服装网站模板北京住建局
  • 财税公司网站开发乐清网吧什么时候恢复营业
  • 怎样用linux做网站单页设计是什么意思
  • 网站上图片不能下载 该怎么做如何在服务器上发布网站
  • 重庆网站排名优化教程电影网站如何做
  • 福州网站建设网络公司排名海纳网站建设
  • 网站排名软件利搜淮南人才网