安全研究人员近日曝出一个名为幽灵(GHOST)的严重安全漏洞,这个漏洞可以允许攻击者远程获取操作系统的最高控制权限,影响市面上大量Linux操作系统及其发行版。该漏洞CVE编号为CVE-2015-0235。

为了安全 打补丁  过程 发出来啦  共享给大家

什么是glibc

glibc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。glibc囊括了几乎所有的UNIX通行的标准。

漏洞概述

代码审计公司Qualys的研究人员在glibc库中的__nss_hostname_digits_dots()函数中发现了一个缓冲区溢出的漏洞,这个bug可以经过gethostbyname*()函数被本地或者远程的触发。

应用程序主要使用gethostbyname*()函数发起DNS请求,这个函数会将主机名称转换为ip地址。

影响范围

该漏洞影响glibc库版本2.2-2.17的Linux操作系统

操作系统类型包括

CentOS 6 & 7

Debian 7

Red Hat Enterprise Linux 6 & 7

Ubuntu 10.04 & 12.04

各Linux发行版

漏洞测试

vim aa.c 写入aa.c

#include #include #include #include #include #include #define CANARY "in_the_coal_mine"

struct {

char buffer[1024];

char canary[sizeof(CANARY)];

} temp = { "buffer", CANARY };

int main(void) {

struct hostent resbuf;

struct hostent *result;

int herrno;

int retval;

/*** strlen (name) = size_needed - sizeof (*host_addr) - sizeof (*h_addr_ptrs) - 1; ***/

size_t len = sizeof(temp.buffer) - 16*sizeof(unsigned char) - 2*sizeof(char *) - 1;

char name[sizeof(temp.buffer)];

memset(name, '0', len);

name[len] = '\0';

retval = gethostbyname_r(name, &resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);

if (strcmp(temp.canary, CANARY) != 0) {

puts("vulnerable");

exit(EXIT_SUCCESS);

}

if (retval == ERANGE) {

puts("not vulnerable");

exit(EXIT_SUCCESS);

}

puts("should not happen");

exit(EXIT_FAILURE);

}

gcc aa.c -o aa

[root@localhost ~]# ./aa

vulnerable

有漏洞

[root@localhost ~]# yum update glibc -y

修复漏洞

继续检测[root@localhost ~]# ./aa

not vulnerable

漏洞修补 完成

linux获取最高权限并取消_Linux 更新glibc 漏洞 可以获取最高权限相关推荐

  1. linux获取最高权限并取消_Linux获取最终权限说明

    由于Linux权限的特性,当我们要分享自己的文件时,一般文件都要修改权限以适合其他用户的使用.在Linux系统中创建一个文件和创建一个目录所获得的最终权限是不相同的.Linux文件的最终权限与umas ...

  2. Hack The Box - Catch 利用let chat API查询信息,Cachet配置泄露漏洞获取ssh登录密码,apk代码注入漏洞利用获取root权限

    Hack The Box-Catch Hack The Box开始使用流程看这篇 文章目录 Hack The Box-Catch 整体思路 1.Nmap扫描 2.apk文件信息收集 3.lets ch ...

  3. linux获取最高权限并取消_通过安卓渗透WIN7获取系统最高权限

    声明:仅限于技术研究,恶意攻击他人计算机将付法律责任! 一.安装Termux模拟器 官网地址:https://termux.com/ 1.下载并安装Termux.apk 如图运行apt update ...

  4. Java 获取linux根目录下的文件夹_Linux使用

    Liunx使用 命令管道连接 | 命令管道符合为|,可以将两个命令进行连接,连接后第一个命令的输出结果作为第二个命令的输入信息 比如 ls /ect | more -10 分屏显示etc文件夹下的10 ...

  5. linux修改文件权限的命令_Linux基础文件权限管理

    图片来源:pexels.com 你好,我是goldsunC 让我们一起进步吧! Linux文件属性 文件权限在Linux基础中是一个很重要的概念,一个系统管理员应该熟练掌握文件权限的概念.OK,现在我 ...

  6. linux关闭自动更新,Ubuntu开启系统自动升级与取消自动更新的方法,

    Ubuntu开启系统自动升级与取消自动更新的方法, 开启 Ubuntu 系统自动升级 在学习如何开启Ubuntu系统自动升级之前,先解释下为什么需要自动升级. 默认情况下,ubuntu每天一次检查更新 ...

  7. linux取消管理员权限设置,Linux添加用户并赋予/取消管理员权限

    Ubuntu sudo adduser username # 添加用户 sudo adduser username sudo # 追加管理员权限 grep -Po '^sudo.+:\K.*$' /e ...

  8. Linux添加用户并赋予/取消管理员权限

    Ubuntu sudo adduser username # 添加用户 sudo adduser username sudo # 追加管理员权限grep -Po '^sudo.+:\K.*$' /et ...

  9. linux的mysql如何删除用户_linux mysql增加用户,删除用户,以及用户权限

    一些基本的命令: 登录: mysql -u username -p 显示所有的数据库: show databases; 使用某一个数据库: use databasename; 显示一个数据库的所有表: ...

最新文章

  1. Stm32 Bootloader整理
  2. (数据结构与算法)单链表与双链表增删改查的实现。
  3. 独家交付秘籍,你确定不点开看看?
  4. Linux getcwd()的实现【转】
  5. 关于mobiscroll插件的使用
  6. python 笔记(三) 断言(assert)
  7. [转]CTO谈豆瓣网和校内网技术架构变迁
  8. mysql滴的一声就关了_关于mysql数据库在输入密码后,滴的一声直接退出界面的解决办法(详细办法)...
  9. perl中的uc与lc函数
  10. c++ 栈 STL的基本操作
  11. 计算机注册dll,电脑注册dll文件和ocx文件的具体方法与操作步骤
  12. vs2005创建智能设备IE脚本错误
  13. SparkStreaming + LogisticRegression 实现路况预测
  14. 关于 Hypervisor的理解
  15. 网易mumu模拟器adb连接配置
  16. 模块学习2:基于PELCO-D协议对云台进行定点控制
  17. EOS.CYBEX社区满分入围EOS超级节点候选人!
  18. 插入U盘后 计算机未响应,电脑插入U盘后没有反应怎么办?
  19. pyqt5中QGraphicsView弹出菜单
  20. Android屏幕适配概论:

热门文章

  1. 在PHP中给表格加上css样式,表格CSS样式设置 给table表格设置CSS样式表
  2. sqlmap 连接mysql_sqlmap连接Mysql实现getshell | CN-SEC 中文网
  3. 现代计算机三大科学计算,计算机的三大特点是什么?
  4. 【点云论文速读】点云高质量3D表面重建
  5. RHEL/CentOS通用性能优化、安全配置参考
  6. BZOJ 2780: [Spoj]8093 Sevenk Love Oimaster( 后缀数组 + 二分 + RMQ + 树状数组 )
  7. iOS UILabel UITextView自适应文本,或文本大小自适应
  8. VirtualBox上Ubuntu 共享文件夹
  9. 关于大型网站技术演进的思考(五)--存储的瓶颈(5)
  10. MTD NANDFLASH驱动相关知识介绍