首页 > 其他分享 >WP | XCTF上两道Web方向基础题

WP | XCTF上两道Web方向基础题

时间:2023-03-19 15:56:21浏览次数:38  
标签:Web php 文件 flag ini WP 序列化 上传 XCTF

一、unserialize3

1、进入靶场环境界面如下:

 

是一段Java代码

 

2、题目unserialize给出提示这题的方向是反序列化

关于序列化的概念:序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象,而反序列则反之。

这段代码中有一个特殊的函数__wakeup()。unserialize() 反序列化函数会检查是否存在一个 __wakeup() 方法。如果存在,则会先调用 __wakeup 方法,预先准备对象需要的资源。因此我们要绕过它

 

3、序列化后得到的结果为 O:4:"xctf":1:{s:4:"flag";s:3:"111";}

 

4、绕过__wakeup()其中的一个方法是修改为大于实际的属性个数,则O:4:"xctf":1:{s:4:"flag";s:3:"111";} 可以改为 O:4:"xctf":2:{s:4:"flag";s:3:"111";},在利用GET请求构造参数/?code=上传

 

成功拿到flag:cyberpeace{d43ef2ffa4752d623eb76b2349eec331}

 

 

二、easyupload

1、进入题目搭建的靶场后画面显示如下:

这是一个文件上传方向的漏洞,利用该漏洞点上传木马进行getshell

 

2、从靶场的url /index.php可知它应该会解析PHP代码,因此用记事本用PHP语言写一个一句话木马,并把它的后缀名改为.php

这里使用了GIF89a图片头文件欺骗,很多时候文件上传功能可能只对文件头一开始那部分做检查,因此上传该文件到web服务器有可能当作gif图片执行,进而执行php代码

 

但是上传文件之后,回显”Your file looks wicked“,果然还是想得太简单了......

查看网页源码毫无收获

 

3、编写一个.user.ini文件(在PHP中,php.ini是配置类文件,而.user.ini实际上是用户可自定义的文件,并且.user.ini 是PHP 支持基于每个目录的 INI 文件配置),使用auto_open_file函数提前加载插入的文件

这个a.jpg也就是刚才的a.php文件,把它的后缀名进行修改

 

4、使用BurpSuite进行抓包,首先上传.user.ini文件

把Content-Type这部分改为image/jpg,然后放包

上传成功了

 

5、同理,把另一份a.jpg文件也上传,同样的上传成功了

 

6、按F12查看文件上传的路径

可以得到 http://61.147.171.105:58808/uploads/index.php

 

7、利用蚁剑连接,挂载URL,查看文件

但是虽然连接成功,但是却还是报错无法通过后门看到对面服务器内的文件。。。原因也不知道

 

8、没办法了,尝试了一下用view-source协议来执行木马,使用方法为 view-source:URL

终于成功拿到flag:cyberpeace{5b1bc0e71c306313702d47d9380d373f}

标签:Web,php,文件,flag,ini,WP,序列化,上传,XCTF
From: https://www.cnblogs.com/gsh23/p/17233379.html

相关文章

  • .NET中的winform、wpf、winui和maui你都知道吗?
    前言    年初.NET工程师的求职者反馈不好找工作,尤其是B/S开发,C/S开发稍微好点。这种情况下有好多小伙伴都想转行了,于是了解了一下JAVA,比.NET还卷,还是走.NET内部转行吧......
  • 【WebLogic使用】5.WebLogic创建虚拟主机和绑域名
    一、创建虚拟主机启动WebLogic服务,登录到WebLogic的服务控制台:在主界面,我们选择左侧的选项栏中的“环境”-->“虚拟主机”选项:点击“新建”,进入新建......
  • 【WebLogic使用】4.使用WebLogic部署Web应用
    我们之前都是使用MyEclipse的Server视窗来部署应用到WebLogic服务器上,但是这仅仅是我们的开发步骤,带我们开发完成之后,将应用部署到生产环境的时候,一......
  • 能快速构建和定制网络拓扑图的WPF开源项目-NodeNetwork
    大家好,我是沙漠尽头的狼,今天介绍一个WPF开源项目-NodeNetwork,它可以帮助我们快速构建和定制网络拓扑图。一、前言在现代软件开发中,数据可视化和可交互性越来越受到关注。......
  • Java Web中端口被占的问题
    使用win+r打开命令行,输入下列代码查询被占用的端口netstat-ano|findstr8080 发现该端口被PID(进程ID)为20792的进程占用。打开任务管理器,点击详情信息,找到并结束该......
  • #yyds干货盘点#JSON Web Tokens 是如何工作的
    在用户权限校验的过程中,一个用户如果使用授权信息成功登录后,一个JSONWebToken将会返回给用户端。因为返回的令牌包含有授权信息,应用程序应小心保存这些授权信息,以避免不......
  • #yyds干货盘点#JSON Web Tokens 是如何工作的
    在用户权限校验的过程中,一个用户如果使用授权信息成功登录后,一个JSONWebToken将会返回给用户端。因为返回的令牌包含有授权信息,应用程序应小心保存这些授权信息,以避免不......
  • RHEL 7配置HAProxy实现Web负载均衡
    本文将简单介绍使用HAProxy实现web负载均衡,主要内容包括基于权重的轮询、为HAProxy配置https、配置http重定向为https、配置HAProxy使用独立日志。一、测试环境HAProxy:......
  • 旁挂式三层组网-隧道转发模式web配置
    拓扑图相关命令1.AR12.AR23.LSW14.LSW25.AC16.Cloudweb配置在ac1上配置与cloud相关网段的vlan1,同时开启HTTP服务在浏览器上登入https://网段......
  • webpack原理(1):Webpack热更新实现原理代码分析
    热更新,主要就是把前端工程文件变更,即时编译,然后通知到浏览器端,刷新代码。服务单与客户端通信方式有:ajax轮询,EventSource、websockt。客户端刷新一般分为两种:整体页面刷新,......