活动介绍
file-type

修复OpenSSH J PAKE漏洞CVE-2010-4478:Linux OpenSSH重装指南

TXT文件

5星 · 超过95%的资源 | 下载需积分: 48 | 1KB | 更新于2024-09-10 | 195 浏览量 | 242 下载量 举报 2 收藏
download 立即下载
"解决OpenSSH J-PAKE授权问题漏洞CVE-2010-4478的Linux上OpenSSH重装方法" OpenSSH是一款广泛使用的开源安全协议,用于在Linux和Unix系统之间提供加密的网络服务,如远程登录、文件传输等。然而,它也可能会存在安全漏洞,如J-PAKE(Just-in-Time Password-Authenticated Key Exchange)授权问题,被识别为CVE-2010-4478。这个漏洞可能允许攻击者获取未授权的访问权限,对系统的安全性构成严重威胁。 为了修复这个问题,我们需要在Linux系统上重新安装OpenSSH。以下是详细的步骤: 1. 首先,切换到有足够权限的用户,通常是root用户。使用`su -`或`sudo -i`命令。 2. 将当前的sshd服务备份,以防万一需要恢复。可以将`/etc/init.d/sshd`复制到一个安全的位置,例如`/home/guankong`。 3. 停止当前运行的sshd服务,使用命令`/etc/init.d/sshd stop`。 4. 接下来,卸载已安装的OpenSSH相关包。使用`rpm -q | grep openssh`查找所有OpenSSH相关的包,然后使用`rpm -e`命令卸载它们。 5. 下载新的OpenSSH源代码包,这里使用的是`openssh-6.6p1.tar.gz`。将其解压缩到一个适当的目录,例如`/root/openssh-6.0p1`。 6. 进入解压后的目录,并配置编译选项。在`./configure`命令中指定安装路径、配置文件位置以及禁用zlib版本检查,确保与系统中已有的zlib库兼容。 7. 使用`make`进行编译,然后使用`make install`进行安装。 8. 完成安装后,检查OpenSSH版本以确认安装成功,使用`ssh -V`命令。 9. 编辑`/etc/ssh/sshd_config`文件,根据需要配置SSH服务器的设置。 10. 将新的sshd服务脚本复制到`/etc/init.d/`目录下,以便于启动和管理服务。 11. 启动sshd服务,使用`/etc/init.d/sshd start`命令。 12. 为了使sshd在系统启动时自动运行,需要创建一个新的系统服务。使用`chkconfig --add sshd`添加服务,然后使用`chkconfig sshd on`设置开机启动。 13. 最后,检查SSH服务是否正在监听22端口,使用`netstat -an | grep :22`命令。 以上步骤详细介绍了如何在发现OpenSSH J-PAKE漏洞(CVE-2010-4478)后,安全地卸载旧版本的OpenSSH,下载并安装新版本,以及配置和启动服务,以确保系统的安全性。这个过程对于任何遇到类似问题的Linux系统管理员都是重要的参考。

相关推荐

filetype
CVE ID: CVE-2010-1870 XWork是一个命令模式框架,用于支持Struts 2及其他应用。 XWork处理用户请求参数数据时存在漏洞,远程攻击者可以利用此漏洞在系统上执行任意命令。 Struts2中WebWork框架使用XWork基于HTTP参数名执行操作和调用,将每个HTTP参数名处理为OGNL(对象图形导航语言)语句,而OGNL将: user.address.city=Bishkek&user['favoriteDrink']=kumys 转换为: action.getUser().getAddress().setCity("Bishkek") action.getUser().setFavoriteDrink("kumys") 这是通过ParametersInterceptor来执行的,使用用户提供的HTTP参数调用ValueStack.setValue()。 除了获取和设置属性外,OGNL还支持其他一些功能: * 方法调用:foo() * 静态方式调用: @java.lang.System@exit(1) * 构建函数调用:new MyClass() * 处理上下文变量:#foo = new MyClass() 由于HTTP参数名为OGNL语句,为了防范攻击者通过HTTP参数调用任意方式,XWork使用了以下两个变量保护方式的执行: * OgnlContext的属性xwork.MethodAccessor.denyMethodExecution(默认设置为true) * SecurityMemberAccess私有字段allowStaticMethodAccess(默认设置为false) 为了方便开发人员访问各种常用的对象,XWork提供了一些预定义的上下文变量: * #application * #session * #request * #parameters * #attr * #context * #_memberAccess * #root * #this * #_typeResolver * #_classResolver * #_traceEvaluations * #_lastEvaluation * #_keepLastEvaluation 这些变量代表各种服务器端对象。为了防范篡改服务器端对象,XWork的ParametersInterceptor不允许参数名中出现“#”字符,但如果使用了Java的unicode字符串表示\u0023,攻击者就可以绕过保护,修改保护Java方式执行的值: #_memberAccess['allowStaticMethodAccess'] = true #foo = new java .lang.Boolean("false") #context['xwork.MethodAccessor.denyMethodExecution'] = #foo #rt = @java.lang.Runtime@getRuntime() #rt.exec('mkdir /tmp/PWNED')
zhangmanzu_1
  • 粉丝: 1
上传资源 快速赚钱