<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    PHPMailer 任意文件讀取漏洞(CVE-2017-5223)

    Path phpmailer/CVE-2017-5223

    漏洞原理

    PHPMailer在發送郵件的過程中,會在郵件內容中尋找圖片標簽(<img src="...">),并將其src屬性的值提取出來作為附件。所以,如果我們能控制部分郵件內容,可以利用<img src="/etc/passwd">將文件/etc/passwd作為附件讀取出來,造成任意文件讀取漏洞。

    漏洞環境

    在當前目錄下創建文件.env,內容如下(將其中的配置值修改成你的smtp服務器、賬戶、密碼):

    SMTP_SERVER=smtp.example.com
    SMTP_PORT=587
    SMTP_EMAIL=your_email@example.com
    SMTP_PASSWORD=secret
    SMTP_SECURE=tls

    其中,SMTP_SECURE是SMTP加密方式,可以填寫none、ssl或tls。

    然后編譯、運行測試環境:

    docker-compose build
    docker-compose up -d

    環境啟動后,訪問http://your-ip:8080/,即可看到一個“意見反饋”頁面。

    漏洞復現

    “意見反饋”頁面,正常用戶填寫昵稱、郵箱、意見提交,這些信息將被后端儲存,同時后端會發送一封郵件提示用戶意見填寫完成:

    該場景在實戰中很常見,比如用戶注冊網站成功后,通常會收到一封包含自己昵稱的通知郵件,那么,我們在昵稱中插入惡意代碼<img src="/etc/passwd">,目標服務器上的文件將以附件的形式被讀取出來。

    同樣,我們填寫惡意代碼在“意見”的位置:

    收到郵件,其中包含附件/etc/passwd/etc/hosts

    下載讀取即可。

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类