zoukankan      html  css  js  c++  java
  • bWAPP靶场之HTML Injection(GET)

    0x00 前言

    最近想把bwapp通关~~冲鸭!

    0x01 测试过程

    先随便输入一下,发现输入的名字会输出到页面上
    在这里插入图片描述
    1.Low
    由于会输出输入的名字,我们先尝试一下能不能弹框,OK~~

    payload:?firstname=<script>alert(1)</script>&lastname=ruanruan&form=submit
    

    在这里插入图片描述
    再尝试引入外链

    payload:?firstname=quanquan&lastname=ruanruan&form=submit

    在这里插入图片描述
    2.Medium
    使用Low等级的两个payload,发现都没执行
    在这里插入图片描述
    在这里插入图片描述
    可能过滤替换了一些字符
    分析源码可以使用urlencode绕过,由于是在浏览器提交payload,浏览器会对url进行一次解码,所以我们需要对payload进行两次urlencode。payload:

    ?firstname=%253Cscript%253Ealert%25281%2529%253C%252fscript%253E&lastname=ruanruan&form=submit
    

    在这里插入图片描述
    payload:

    ?firstname=%253Ca%2520href%253D%2522https%253A%252f%252fblog.csdn.net%252fsyy0201%2522%253Equanquan%253C%252fa%253E&lastname=ruanruan&form=submit
    

    在这里插入图片描述
    3.High

    0x02 源码分析

    1.Low
    在这里插入图片描述
    无任何过滤,直接输出。
    2.Medium
    关键代码:functions_external.php
    在这里插入图片描述
    从第92、93行可以知道,该函数使用了str_replace()将<>转换成HTML实体字符。但是在输出的时候又对输出进行了url解码。那么我们就可以利用url编码绕过str_replace的检查。
    3.High
    在这里插入图片描述
    使用了htmlentities()函数将输入转换为 HTML 实体。emmm绕不过

  • 相关阅读:
    Icident event 分析
    innodb buffer pool相关特性
    备库Seconds_Behind_Master的计算
    savepoint原理
    layer探框
    解决layui表格和下拉框同时使用时,下拉框被表格遮当问题
    layui switch开关按钮
    formSelects 4.x多选下拉框
    java如何调用php接口,并获取值
    layui时间范围选择器
  • 原文地址:https://www.cnblogs.com/0nc3/p/12063435.html
Copyright © 2011-2022 走看看