openbsd是什么?openbsd系统有什么漏洞?
受影响系统:
OpenBSD OpenBSD 4.2
OpenBSD OpenBSD 4.1
OpenBSD OpenBSD 4.0
描述:
BUGTRAQ ID: 25984
CVE(CAN) ID: CVE-2007-5365
OpenBSD是一款开放源代码Unix类操作系统。
OpenBSD系统的DHCP协议实现上存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制服务器。
OpenBSD的options.c文件中的cons_options()函数没有正确地处理DHCP请求。如果远程攻击者所发送的DHCP请求中指定最大消息大小小于最小IP MTU(278)的话,就会在OpenBSD中导致dhcpd(8)覆盖栈缓冲区,执行任意指令。
漏洞存在于负责处理从客户端所接收到的DHCP选项的函数中。在src/usr.sbin/dhcpd/options.c文件中:int
cons_options(struct packet *inpacket, struct dhcp_packet *outpacket,
int mms, struct tree_cache **options,
int overload,
int terminate, int bootpp, u_int8_t *prl, int prl_len)
{
unsigned char priority_list[300];
int priority_len;
unsigned char buffer[4096];
int main_buffer_size;
int mainbufix, bufix;
int option_size;
int length;dhcp.h中定义了DHCP_FIXED_LEN:if (!mms &&
inpacket &&
inpacket->options[DHO_DHCP_MAX_MESSAGE_SIZE].data &&
(inpacket->options[DHO_DHCP_MAX_MESSAGE_SIZE].len >=
sizeof(u_int16_t)))
mms = getUShort(
inpacket->options[DHO_DHCP_MAX_MESSAGE_SIZE].data);if (mms)
main_buffer_size = mms - DHCP_FIXED_LEN;
else if (bootpp)
main_buffer_size = 64;
else
main_buffer_size = 576 - DHCP_FIXED_LEN;if (main_buffer_size >sizeof(buffer))
main_buffer_size = sizeof(buffer);main_buffer_size是有符型,可被攻击者控制。只要main_buffer_size是比较小的正整数(<= 4096),执行流就会正常进行:
option_size = store_options(
buffer,
(main_buffer_size - 7 ((overload & 1) ? DHCP_FILE_LEN : 0)
((overload & 2) ? DHCP_SNAME_LEN : 0)),
options, priority_list, priority_len, main_buffer_size,
(main_buffer_size ((overload & 1) ? DHCP_FILE_LEN : 0)),
terminate);
memcpy(outpacket->options, DHCP_OPTIONS_COOKIE, 4);
mainbufix = 4;这里如果main_buffer_size为比较小的正值的话(<= 7),就会导致store_options迅速退出,执行流会继续。具体来讲,只要客户端报文中的Maximum Segment Size值(mms)满足(DHCP_FIXED_LEN < mms < DHCP_FIXED_LEN 4)这个条件,main_buffer_size就会为小于4的正数。if (option_size <= main_buffer_size="" -="" outpacket-="">options[mainbufix],
buffer, option_size);
mainbufix= option_size;
if (mainbufix < main_buffer_size)
outpacket->options[mainbufix] = DHO_END;
length = DHCP_FIXED_NON_UDP mainbufix;
} else {
outpacket->options[mainbufix] = DHO_DHCP_OPTION_OVERLOAD;
outpacket->options[mainbufix] = 1;
if (option_size >
main_buffer_size - mainbufix DHCP_FILE_LEN)
outpacket->options[mainbufix] = 3;
else
outpacket->options[mainbufix] = 1;memcpy(&outpacket->options[mainbufix],
buffer, main_buffer_size - mainbufix);用负数的第三个参数触发memcpy(3)调用就会导致覆盖大部分的进程内存。
<*来源:gera richarte="" nahuel="" riva="" errata40.html="" options.c="" l="bugtraq&m=119212200825215&w=2" dsa-1388="">
建议:
--------------------------------------------------------------------------------
厂商补丁:
Debian
------
Debian已经为此发布了一个安全公告(DSA-1388-3)以及相应补丁:
DSA-1388-3:New dhcp packages fix arbitrary code execution
链接:http://www.debian.org/security/2007/dsa-1388补丁下载:
Source archives:http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2.dsc
Size/MD5 checksum: 683 0b58f9e8eb121cf97c069580fe7f8d2a
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2.diff.gz
Size/MD5 checksum: 109536 e05751df16af9fef3826de1b13b19694
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5.orig.tar.gz
Size/MD5 checksum: 294909 ab22f363a7aff924e2cc9d1019a21498alpha architecture (DEC Alpha)http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_alpha.deb
Size/MD5 checksum: 115986 5a3fad1441184f67ebfd259e225b8deb
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_alpha.deb
Size/MD5 checksum: 122958 70cf5573cdb9df0ade56fd58963526f7
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_alpha.deb
Size/MD5 checksum: 81466 59a2774d3cbf426c116cda5b37004b02
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_alpha.udeb
Size/MD5 checksum: 53328 fc6a74bbf4ca3d11266894022967d215amd64 architecture (AMD x86_64 (AMD64))http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_amd64.deb
Size/MD5 checksum: 115646 5fb5be9e0df58591e2f09984b107b6ff
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_amd64.deb
Size/MD5 checksum: 76622 699bdea9722e30a17d893a5fdfc59b3c
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_amd64.deb
Size/MD5 checksum: 109336 aca4a6dfbe89e12da8b5f57031c6749a
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_amd64.udeb
Size/MD5 checksum: 46762 b7ab045411264337a230c0e0547e976carm architecture (ARM)http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_arm.deb
Size/MD5 checksum: 114446 e706691fe1b1da3e48556f3f3a2759dc
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_arm.udeb
Size/MD5 checksum: 44804 a7de3008bff776bc41f57939d6baef0c
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_arm.deb
Size/MD5 checksum: 74574 c357f51c69cacd0c5e7f746735b050ee
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_arm.deb
Size/MD5 checksum: 107660 c0426fafa16454f4f3613b669be104b3hppa architecture (HP PA RISC)http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_hppa.deb
Size/MD5 checksum: 115078 77698ad1416708c1bba42286717a6a38
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_hppa.deb
Size/MD5 checksum: 109288 ba099d48d08c7b63f17c901505069a93
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_hppa.deb
Size/MD5 checksum: 77218 631787f11690111a20ca8e06da223955
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_hppa.udeb
Size/MD5 checksum: 46534 e4563d516472ae7b00640c4faf63a69bi386 architecture (Intel ia32)http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_i386.udeb
Size/MD5 checksum: 40922 439ee79ca28a824a3bd702e6d2a4782a
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_i386.deb
Size/MD5 checksum: 72582 ad568458d95419eae37cbc05f7df99e0
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_i386.deb
Size/MD5 checksum: 111342 02946828ab4646c8c9d40abbb9323f10
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_i386.deb
Size/MD5 checksum: 103662 5309abf9853a42438f3b25557e2ea72aia64 architecture (Intel ia64)http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_ia64.deb
Size/MD5 checksum: 135918 1130320929adbd7b5f6bbbdbe7ea8cf4
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_ia64.deb
Size/MD5 checksum: 142464 88880a0d9631738e8d50d88725405f2a
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_ia64.udeb
Size/MD5 checksum: 72360 4c6b9e4ed5a2b908818f2bdc047302f1
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_ia64.deb
Size/MD5 checksum: 92714 6b45e56a178149eb662b3ace829f4d1amips architecture (MIPS (Big Endian))http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_mips.deb
Size/MD5 checksum: 112086 f3eefe99badef8981c197191cfa7ad39
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_mips.deb
Size/MD5 checksum: 118180 bc2b4fcd3d3a7df0ece598e4a0c72ea4
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_mips.udeb
Size/MD5 checksum: 49302 0a4a229e0e066b8d9fecc75125385899
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_mips.deb
Size/MD5 checksum: 78638 a588b355c89a2f5bbd893aaf938740c8mipsel architecture (MIPS (Little Endian))http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_mipsel.deb
Size/MD5 checksum: 117674 a39185fab632a03793efe3396311f350
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_mipsel.udeb
Size/MD5 checksum: 48770 42c311ba6c2052abdddf6c2e6b7aa16a
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_mipsel.deb
Size/MD5 checksum: 111554 86440305699bfed9cd6cd0721b5c032c
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_mipsel.deb
Size/MD5 checksum: 78272 95b3aff8d41ea810ee4d4b1bb75c9eedpowerpc architecture (PowerPC)http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_powerpc.deb
Size/MD5 checksum: 74674 f3377454115baffb9450fb0a0bb51d0f
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_powerpc.deb
Size/MD5 checksum: 105862 4b75aabdc533969677988dbc4bd8e59e
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_powerpc.udeb
Size/MD5 checksum: 43066 2edba1128225890a6792f2eecee00058
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_powerpc.deb
Size/MD5 checksum: 112228 a60c4734706546a47127c11765f1d9bfs390 architecture (IBM S/390)http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_s390.udeb
Size/MD5 checksum: 53540 8a063f95dd410c93e6b5fe10e091fdc2
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_s390.deb
Size/MD5 checksum: 121934 d5ae65fdd1254df11d692051753efcc8
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_s390.deb
Size/MD5 checksum: 116260 29bf7983a2226601124ee0da48072aa2
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_s390.deb
Size/MD5 checksum: 80346 fe7c1452e141fc20d16653b857d6ec69sparc architecture (Sun SPARC/UltraSPARC)http://security.debian.org/pool/updates/main/d/dhcp/dhcp-relay_2.0pl5-19.5etch2_sparc.deb
Size/MD5 checksum: 75060 e8e5a86e2e608771e36755b0f443df83
http://security.debian.org/pool/updates/main/d/dhcp/dhcp_2.0pl5-19.5etch2_sparc.deb
Size/MD5 checksum: 112946 cd73de6703a63dc321cf788bab64d52d
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client_2.0pl5-19.5etch2_sparc.deb
Size/MD5 checksum: 106534 c777f24901a5bdb9db29c3a82da401d8
http://security.debian.org/pool/updates/main/d/dhcp/dhcp-client-udeb_2.0pl5-19.5etch2_sparc.udeb
Size/MD5 checksum: 43554 516673e6c0d38126058807dbbdf81fe7补丁安装方法:1. 手工安装补丁包:首先,使用下面的命令来下载补丁软件:
# wget url (url是补丁下载链接地址)然后,使用下面的命令来安装补丁:
# dpkg -i file.deb (file是相应的补丁名)2. 使用apt-get自动安装补丁包:首先,使用下面的命令更新内部数据库:
# apt-get update然后,使用下面的命令安装更新软件包:
# apt-get upgradeOpenBSD
-------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
ftp://ftp.openbsd.org/pub/OpenBSD/patches/4.0/common/016_dhcpd.patch
ftp://ftp.openbsd.org/pub/OpenBSD/patches/4.1/common/010_dhcpd.patch
ftp://ftp.openbsd.org/pub/OpenBSD/patches/4.2/common/001_dhcpd.patch
linux系统怎么破解wifi密码?使用reaver工具是一种方法
需要工具:reaver原理:穷举PIN码以攻破无线路由器的安全防护安装:下载源码从这个网址下载reaver源代码http: code google com p reaver-wpswget http: reaver-wps googlecode com files reaver-1 4 tar gz解
详情2018-01-17 11:04:37责编:llp 来源:驱动管家网站安全扫描工具:zmap怎么进行全网检测?
ZMap是一个开源网络扫描工具,可以帮助研究人员快速的进行全网检测。只需要一台机器和足够上行网络速度,就可以以达到千兆以太网的理论值速度并在45分钟内扫描全网络IPv4地址。基本选项这些选项是在扫描中最常用
详情2018-01-21 09:02:32责编:llp 来源:驱动管家网管型设备webportal暴力破解实例
…function login_send(){var f, p, pa
详情2018-01-21 09:48:20责编:llp 来源:驱动管家关闭flash cookie避免信息泄露要怎么做?
Flash Cookie比浏览器Cookie容量更大,可以跨浏览器对不同Cookies进行身份剔重,但是不易删除。让我们一起来看看如何关闭Flash Cookie吧:1 用户打开一个新的浏览器窗口,在浏览器中输入如下网址:http: www ma
详情2018-01-05 09:26:37责编:llp 来源:驱动管家什么是sql注入?sql注入攻击的步骤
SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没
详情2018-01-15 09:51:58责编:llp 来源:驱动管家你知道极虎病毒的危害吗?中了极虎病毒怎么办?
极虎病毒是金山毒霸云安全实验室国内首家发现的一款集合了磁碟机、AV终结者、中华吸血鬼、猫癣下载器为一体的混合病毒,由于该病毒可利用IE极光ODAY漏洞进行传播,又是虎年的第一个重大恶性病毒,因此得名“极虎
详情2018-01-03 11:37:22责编:llp 来源:驱动管家木马免杀怎么改特征码?木马免杀改特征码的经验分享
木马免杀,在国内应该起源于05年吧 从那时单一特征码到现在复合特征码,杀毒软件从无主动防御到有主动防御 免杀技术越来越难 但是万变不离其宗--改特征码 到现在一些辅助软件的行为查杀 以下讲解都是以远程控制软件
详情2018-01-03 10:00:32责编:llp 来源:驱动管家如何制作图片asp木马?asp木马高手是怎么炼成的?
1 名称:如何制作图片ASP木马建一个asp文件,内容为找一个正常图片ating jpg,插入一句话木马(比如冰狐的),用ultraedit进行hex编译,插入图片里,为了运行成功,还要搜索,将其变为00,(不要替换自己asp的
详情2018-01-08 08:53:20责编:llp 来源:驱动管家远程访问软件radmin有哪些特点?怎么通过radmin得到服务器权限?
Radmin 是一款很不错的服务器管理,有以下特点:1、程序体积小巧,并且安装简单、配置容易。2、运行速度快,在10Mbps局域网的测试中,它比流行的VNC(Virtual Network Computing)要快,也超过了PcAnywhere。3、
详情2018-01-23 20:19:48责编:llp 来源:驱动管家新型勒索病毒来袭!新型勒索蠕虫病毒petya分析报告
6月27日晚间,一波大规模勒索蠕虫病毒攻击重新席卷全球。媒体报道,欧洲、俄罗斯等多国政府、银行、电力系统、通讯系统、企业以及机场都不同程度的受到了影响。阿里云安全团队第一时间拿到病毒样本,并进行了分析
详情2018-01-10 16:04:55责编:llp 来源:驱动管家
- 为你分析ftp客户端存在将任意位置写入文件的漏洞
- 微信小程序怎么使用?微信使用方法是什么?
- 美图秀秀有哪些节日模板?怎样用美图秀秀制作节日图片?
- 笔记本电池充电其实你还不知道正确的充电方法
- 电脑显卡的显存怎么看它的好坏呢?
- itunes备份文件的存储路径你知道在哪里可以找到吗
- 教你在xp系统电脑上快速地打开bin文件
- 哪部手机的指纹识别技术强?iPhone6与三星s6的指纹识别技术对比
- 手机充电器可以长时间不拔吗?手机充电器长时间不拔会造成什么危害?
- 局域网共享软件有哪些?局域网共享软件怎么选择?
- flac是什么格式?有哪些软件支持flac文件格式?
- snort是什么意思?snort安装步骤有哪些?
- 映像劫持是什么?病毒利用映像劫持怎么办?
- 电脑在哪儿设置无线网络?电脑无线网络如何设置?
- 支付宝钱包怎么用声波付款?支付宝声波付功能操作
- 爱普生打印机发生故障的时候怎么判断它是堵头还是断线
- 便携式wifi热点好用吗?便携式wifi热点的使用方法
- win7电脑想要关闭usb存储设备应该怎么做
- 用自带工具如何整理磁盘碎片?这些诀窍你一定要知道
- iphone5 sim卡的安装教程 遵循下面步骤