0x00 前言本文記錄從零開始搭建Horde Groupware Webmail漏洞調試環境的細節。
0x01 簡介本文將要介紹以下內容:
Horde Groupware Webmail安裝
Horde Groupware Webmail漏洞調試環境配置
常用知識
0x02 Horde Groupware Webmail安裝簡單來說,安裝Horde Groupware Webmail時需要配置以下環境:
MySQL數據庫
Apache2
php7.2
Dovecot
操作系統選擇Ubuntu18,這裡不能選擇Ubuntu16,因為Ubuntu16不支持php7.2
本文的安裝過程做了適當精簡,完整過程可根據參考資料進行學習,具體安裝過程如下:
1.安裝MariaDB Database Server(1)安裝
安裝命令:sudo apt-get -y install mariadb-server mariadb-client
(2)配置
配置命令:sudo mysql_secure_installation
配置如下:
(3)創建數據庫
連接數據庫的命令:mysql -u root -p
執行以下命令:
設置數據庫的用戶為hordeuser,口令為new_password_here
2.安裝php-horde-webmail安裝命令:sudo apt -y install php-horde-webmail
3.配置webmail安裝命令:
配置如下:
注:
這裡必須指定為/usr/share/horde,否則在運行webmail-install時報錯提示:failed to open stream: No such file or directory in /usr/bin/webmail-install on line 17
4.安裝安裝命令:webmail-install
配置如下:
5.訪問登錄頁面http://127.0.0.1/horde/login.php
這裡不能使用localhost,會報錯提示:
此時沒有配置郵箱用戶,無法進行登錄,需要安裝Dovecot
6.安裝Dovecot安裝命令:apt-get -y install dovecot-imapd dovecot-pop3d
默認horde webmail沒有配置郵箱用戶,可以使用Ubuntu系統的用戶進行登錄,成功,如下圖
補充1:安裝File_Fstab會出現bug安裝命令:pear install File_Fstab
安裝這個模塊之後,無法加載test頁面,報錯提示:
如下圖
補充2:cpanel默認支持Horde Groupware Webmailcpanel的安裝可參考:https://docs.cpanel.net/installation-guide/system-requirements-centos/
cpanel下啟用Horde Groupware Webmail的方法如下:
(1)添加郵箱賬戶
進入WHM,登錄用戶名root,口令為root用戶的口令,選擇創建用戶,如下圖
(2)選擇horde
使用新添加的賬戶登錄,選擇Email Accounts,配置成horde,如下圖
0x03 Horde Groupware Webmail漏洞調試環境配置這裡需要先在安裝Horde Groupware Webmail的Ubuntu18上添加xdebug,然後在本地安裝PhpStorm進行遠程調試
本地系統使用Windows,IP為192.168.112.131
安裝Horde Groupware Webmail的Ubuntu18 IP為192.168.112.168
流程如下:
1.安裝xdebug需要根據php版本選擇合適的xdebug,可選擇以下兩種篩選方法:
(1)命令行執行命令php -i
(2)瀏覽器訪問phpinfo頁面
echo '
訪問http://127.0.0.1/horde/phpinfo.php
將以上方法得到的輸出信息複製到https://xdebug.org/wizard,可以自動解析出對應的xdebug版本
根據提示進行安裝
輸出信息如下:
下載安裝xdebug:
配置xdebug:vi /etc/php/7.2/apache2/conf.d/99-xdebug.ini
配置代碼需要區分XDebug2和XDebug3,自PhpStorm 2020.3起,開始使用XDebug3,語法也做了更改,詳細說明:https://xdebug.org/docs/upgrade_guide#changed-xdebug.remote_enable
正確的參數:
對應老的參數(失效):
重啟Apache服務:sudo systemctl restart apache2.service
可通過訪問phpinfo頁面確認xdebug是否配置成功
2.PhpStorm配置(1)安裝PhpStorm
(2)配置調試端口
打開PhpStorm,創建一個PHP Empty Project
依次打開File-Settings-PHP-Debug
確認調試端口為9000,如下圖
(3)配置DBGp Proxy
依次打開File-Settings-PHP-Debug-DBGp Proxy,填入以下信息:
如下圖
(4)配置Servers
依次打開File-Settings-PHP-Servers
手動添加一個,填入以下信息:
勾選Use path mappings,填入以下配置信息:
如下圖
3.下斷點將Ubuntu18的文件夾/usr/share/horde下載到本地,保存為c:\Users\1\PhpstormProjects\untitiled\horde
在PhpStorm打開需要調試的php文件並下斷點
4.開始調試(1)配置
依次打開Run-Edit Configurations
手動添加一個,選擇PHP Web Page,填入以下信息:
(2)開啟監聽
依次打開Run-Start Listening for PHP Debug Connections
(3)開啟調試
依次打開Run-Debug
彈出Chrome瀏覽器,捕獲到斷點,如下圖
0x04 常用知識1.添加管理員用戶將用戶a設置為管理員用戶
修改:$conf['auth']['admins']=array();
設置為:$conf['auth']['admins']=array('a');
2.日誌位置
0x05 小結在我們搭建好Horde Groupware Webmail漏洞調試環境後,接下來就可以著手對漏洞進行學習。
參考資料:
https://www.horde.org/apps/webmail/docs/INSTALL
https://github.com/horde/base/blob/master/doc/INSTALL.rst
https://geekrewind.com/install-horde-groupware-webmail-on-ubuntu-16-04-18-04-with-apache2/
https://neoserver.site/help/step-step-installation-instructions-postfix-and-dovecot-ubuntu
Recommended Comments