反射型

反射型

介绍

  1. 反射型跨站脚本(Reflected Cross-Site Scripting)是最常见,也是使用最广的一种,可将恶意脚本附加到 URL 地址的参数中

    反射型 XSS 的利用一般是攻击者通过特定手法(如电子邮件),诱使用户去访问一个包含恶意代码的 URL,当受害者点击这些专门设计的链接的时候,恶意代码会直接在受害者主机上的浏览器执行。此类 XSS 通常出现在网站的搜索栏、用户登录口等地方,常用来窃取客户端 Cookies 或进行钓鱼欺骗。

  2. 这就是反射型 XSS 的本质: 你把恶意代码(<script>...​)作为参数发给服务器,服务器没有存进数据库,而是像反射光线一样,原样把它塞进 HTML 页面里返回给了浏览器。

    想象一下,你拿着一面镜子(服务器)。

    • 你对着镜子大喊一声:“​笨蛋! ”(输入 Payload)
    • 镜子立马把你的影像反射回来,你也看到嘴型在说:“笨蛋! ”(输出 Payload)

    输入点: 既然是反射,输入通常就在 URL 里(比如 ?message=...)。

    非持久化: 因为没进数据库,这行代码是“一次性”的。你如果不通过这个特定的 URL 访问,页面就是正常的。

  3. 你可能会问:“既然这代码是我自己输进去弹我自己的,那有什么危害呢?我有病吗?”

    关键在于:黑客不会自己点,黑客会把这个“带毒的链接”发给受害者。

    让我们还原一下​真实的攻击剧本

    • 第一步(制作毒药): 黑客发现 Pikachu 的搜索框有漏洞。他构造了一个精心设计的 URL:http://pikachu.com/xss.php?message=<script>偷走你的cookie发给黑客</script>

    • 第二步(伪装投喂): 黑客把这个长长的链接通过“短链接生成器”缩短,或者伪装成一个诱人的标题:

      “兄弟,快看!刚刚那个 NBA 球员的数据太炸裂了!点击查看:http://t.cn/Rx8s9d

    • 第三步(借刀杀人): 毫无防备的受害者(用户)点击了这个链接。

    • 第四步(中毒):

      1. 受害者的浏览器带着 <script>... 向 Pikachu 服务器发起请求。
      2. Pikachu 服务器(那个“镜子”)傻傻地把这段代码拼接到网页里,返回给受害者。
      3. 受害者的浏览器看到这段 <script>​,以为是网站自带的功能,于是​执行了代码
      4. 结果: 受害者的 Cookie 被悄悄发送到了黑客的服务器上,或者弹出了广告,或者被钓鱼。

实战

在皮卡丘靶场里

在输入框中输入kobe,就会有回显

image

此时打开f12,搜索kobe

image

观察它周围的环境: 它是不是赤裸裸地夹在标签中间?像这样。说明服务器没有任何的过滤和阻挡我们的输入内容。那我们就可以写一些js代码进去了。

在输入框中输入<script>alert('xss')</script>​。如果输入框输入不了这么长的字符串可以直接在url上面修改image

把这里的kobe改为上面的js代码就可以。

回车发现有弹窗出现,就说明有漏洞了。接着就可以修改具体的js代码了。

<script>alert('xss')</script>

这个是javascript的语言,alert的意思就是在前端弹窗出现括号内的内容。

posted @ 2026-01-28 15:04  xx666q  阅读(1)  评论(0)    收藏  举报