目錄
[NISACTF 2022]bingdundun~
1、題目
2、知識點
3、思路
[FSCTF 2023]細狗2.0
4、題目
5、知識點
6、思路
[NISACTF 2022]bingdundun~
1、題目
2、知識點
文件上傳,phar偽協議
3、思路
點擊upload,看看
這里提示我們可以上傳圖片或壓縮包,且有一個參數
我們先按正常的思路,上傳一個php文件、更改后綴名、大小寫這些都不行
這里有一個思路,可以使用phar偽協議(phar://)
phar協議
Phar是PHP的歸檔格式,類似Java的JAR或是.NET的ZIP。Phar文件可以在不需要解壓的情況下在PHP中運行。Phar文件可以用于分發PHP代碼,就像你分發Python代碼時使用的是.pyc或.whl文件。
Phar偽協議是PHP的一個特性,它允許直接從Phar歸檔中讀取文件,而不需要將Phar文件解壓。這樣可以直接從Phar文件運行PHP腳本,而無需在服務器上物理地提取文件。
也就是說我們可以直接用phar偽協議讀取服務器上的壓縮包,而不需要先解壓再讀取
利用條件:1、php版本號在5.3之上 2、php.ini中phar.readonly= Off
抓包查看php版本
發現php版本為PHP/7.3.22
這里嘗試使用phar://
把一句話木馬壓縮成壓縮包,然后上傳
然后訪問zip中的文件,不需要帶后綴名,我壓縮包里面的文件為:flag.php
?bingdundun=phar://3104e5e6798c3292d8f507456d2aaee5.zip/flag
使用蟻劍連接
得到flag:NSSCTF{5f612c39-e631-4f1b-ad8e-90b728915970}
[FSCTF 2023]細狗2.0
4、題目
5、知識點
系統執行,空格繞過
6、思路
打開題目,是一道命令執行,先正常輸入
加入系統命令ls
?hongzh0=1;ls /?
發現對空格進行了過濾
繞過空格過濾的方式:${IFS}$9 、{IFS} 、$IFS 、${IFS}、$IFS$1(其他數字也行,不一定要1)、IFS等
?hongzh0=1;ls$IFS$1/
然后對cat和flag都過濾了
在cat和flag加上\
?hongzh0=1;ca\t$IFS$2/fl\ag
得到flag:NSSCTF{8a00edec-ce65-41fe-8a75-de168053b9a0}
這篇文章就先寫到這里了,哪里不懂的或者哪里不足的歡迎指出