御劍掃出admin登入後台,出現乙個flag
基本資訊:有乙個flag
上傳一句話木馬:抓包修改為php,蟻劍或菜刀連線 有個flag.php檔案
資訊洩露包括原始碼洩露,配置等
命令執行漏洞:(非**執行)
應用程式源**功能實現需要執行系統命令的函式,如果命令連線符控制此函式,就能執行系統命令,。 &,| || 都可以作為連線符使用,如果沒有對函式過濾,導致在沒有絕對路徑的情況下被執行。
常見函式:system函式 exec函式 passthru函式 ``反單引號
system (string katex parse error: expected 'eof', got '&' at position 15: command [,int &̲return_var])
exec(string katex parse error: expected 'eof', got '&' at position 16: command[,array &̲output[,int &return_var]])
passthru(string katex parse error: expected 'eof', got '&' at position 14: command[,int &̲])
``(單引號)
主要是widows和linux:
windows:如果我們的伺服器是一台windows作業系統,存在著命令執行漏洞。對windows伺服器系統進行掃瞄探測、進行程序和服務管理、進行內網滲透、伺服器提限等。
寫乙個php。執行:直接在url上寫上引數值。例如ipconfig,netstat,
管道符|:a|b:a的輸出作為b的輸入
||:a||b:a執行失敗後執行b,類似if else
&&:a&&b:a執行成功執行bb
提權:上傳webshell,大馬騎小馬,
上傳exp,閃電小子等指令碼,
linux:;&
&&|||判斷有沒有管理員許可權:
使用id:
uid=501,為普通使用者。
練習環境
1:空格繞過:
$ifs函式,分隔符,有空格功能
%09 tab的url編碼,也可以代替空格:
{}繞過,將需要空格的命令使用{}括起來:
/**/ 等號為like
繞過主要是伺服器
黑名單(改字尾,複寫,相近語言也可以執行,比如jsps可以當作jsp。asp可以asps,cer,asa。php可以為php2,php3,php5. 比如apache的都會網路組,解析,從右往左,多字尾),
白名單(修改content-type,記憶體結算,雙重識別時偽造真實,過濾檔案內容時,提前轉義/,木馬變形,)
aab%20/etc/passwd
繞過cat
通過空變數繞過:
cat變為:ca$t。 $為空
不會被執行,所以cat被執行。
-《繞過:
%3c即<:>
系統變數繞過:
是 系統
自動變數
,可以利
用系統變
量的字元
拼接為命
令執行h
ttp:
//120.78.92.198
:8030/e
xec/
03.php
?ip=
127.0.0.1
;是系統自動變數,可以利用系統變數的字元拼接為命令執行
是系統自動變
量,可以
利用系統
變數的字
符拼接為
命令執行
反斜槓繞過:
c\a\t%20/etc/passwd
base64編碼繞過:
命令執行漏洞防禦:
1:php配置檔案禁用敏感函式 disable functions配置檔案
2過濾函式:escapesheeearg函式。
Go解析命令列引數 flag包
在寫命令列程式 工具 server 時,對命令列引數進行解析,是一種常見的需求。各種語言一般都會提供相應的方法或庫,以方便開發者使用。在go標準庫中提供了乙個包 flag,方便進行命令列解析。也就是說,go的flag包用來解析命令列引數。命令列flag的語法有如下三種形式 flag 只支援bool型...
Golang 使用flag包進行命令列引數解析
最近在使用go開發cli command line inte ce 時,通過對於官方文件以及他人部落格的學習,在此寫下個人認為更適合自己往後回顧的關於flag的使用說明。package main import fmt flag func main 從main往下看 第一句代表我們需要乙個w的命令列引...
Go 用flag包解析命令列引數
flag包能解析的引數有如下四種形式,使用的時候分三種型別 型別一 cmd flag x 支援所有型別 cmd flag x 只支援非bool型別 型別二 cmd flag 只支援bool型別 型別三 cmd abc 沒有flag的引數 cmd flag x cmd flag x 只支援非bool型...