IT猫扑网:您身边最放心的安全下载站! 最新更新| 软件分类| 专题汇总| 手机版

您当前所在位置:IT猫扑网 > 操作系统 > LINUX > Linux不可读文件被跟踪漏洞

Linux不可读文件被跟踪漏洞

时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)

  受影响系统:

  Linux kernel 2.2.17

  Linux kernel 2.2.16

  Linux kernel 2.2.15

  Linux kernel 2.2.14

  Linux kernel 2.2.13

  Linux kernel 2.2.12

  Linux kernel 2.2.10

  不受影响系统:

  Linux kernel 2.4

  描述:

  ptrace是一个Unix系统调用,通常在断点调试中用于分析运行中的进程,gdb、strace等调试工具都使用了这个系统调用。Linux 2.2.x内核(甚至更早版本的内核)的ptrace实现存在一个漏洞,允许攻击者获取本来无权获取的的敏感信息。

  出于安全考虑,普通用户不能使用ptrace()系统调用跟踪分析setuid程序,不能使用上述调试工具关联其他用户启动的运行中的进程。如果二进制文件bar对于用户foo来说不可读(r权限去掉了),foo用户无权使用ptrace()系统调用跟踪bar程序的执行。

  所有这些限制都在ptrace( PT_ATTACH, ... )实现中得到检查。但是,当ptrace()用于跟踪子进程时,未能正确检查安全限制,bar程序对于foo用户可执行,即使不可读,也可按子进程方式跟踪bar程序的执行过程,此时可以观察bar程序的内存映像。恶意用户可能利用这种技术获取敏感信息,本来这些敏感信息通过chmod go-r后防止诸如strings bar一类的窥探。可以利用该漏洞为进一步损害系统安全性做准备。

  测试方法:

  警 告

  以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

  下例是采用ptrace( PT_ATTACH, ... )企图跟踪一个不可执行文件:

  $ ls -l testfile

  -rwx--x--x 1 root root 216916 Dec 4 11:59 testfile

  $ ./testfile

  waiting... <-- 假设testfile运行后保持,并没有立即结束

  从另外一个shell上执行跟踪命令:

  $ strace -p 11535 <-- 假设testfile进程号是11535

  attach: ptrace(PTRACE_ATTACH, ...): Operation not permitted

  因为testfile不可读,跟踪失败,这是正确的安全限制。

  --------------------------------------------------------------------------

  下例采用子进程方式成功跟踪了一个不可读文件:

  $ strace testfile

  SYS_197(0x3, 0xbffff650, 0x40197d40, 0x80cca38, 0x3) = -1 ENOSYS (Function not implemented)

  fstat(3, {st_mode=S_IFREG|0644, st_size=1744, ...}) = 0

  mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40015000

  ...

  建议:

  升级内核到2.4

关键词标签:Linux漏洞

相关阅读 安装红帽子RedHat Linux9.0操作系统教程 Tomcat9.0如何安装_Tomcat9.0环境变量配置方法 多种操作系统NTP客户端配置 Linux操作系统修改IP Linux实现SCSI硬盘热插拔及在线识别 Linux下用CDMA modem拨号上网

文章评论
发表评论

热门文章 安装红帽子RedHat Linux9.0操作系统教程 安装红帽子RedHat Linux9.0操作系统教程 Linux服务器:设计高性能网站架构-LLMP Linux服务器:设计高性能网站架构-LLMP 使用Clonezilla迁移到虚拟Linux环境 使用Clonezilla迁移到虚拟Linux环境 Linux上的MRTG流量监控中心 Linux上的MRTG流量监控中心 Linux 双网卡绑定一个IP原理及实现 Linux 双网卡绑定一个IP原理及实现 linux和windows等系统远程控制ubuntu桌面 linux和windows等系统远程控制ubuntu桌面

相关下载

人气排行 Linux下获取CPUID、硬盘序列号与MAC地址 dmidecode命令查看内存型号 linux tc实现ip流量限制 安装红帽子RedHat Linux9.0操作系统教程 linux下解压rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 关机、重启、注销 命令 查看linux服务器硬盘IO读写负载 linux命令行浏览器的使用方法 Linux NFS服务固定端口及防火墙配置 U盘安装Ubuntu 10.04 Linux清除用户登录记录和命令历史方法