shell升级完整记录
[root@localhost bash-4.3.30]# cat Makefile |grep prefix
prefix = /usr/local
exec_prefix = ${prefix}
datarootdir = ${prefix}/share
bindir = ${exec_prefix}/bin
libdir = ${exec_prefix}/lib
includedir = ${prefix}/include
prefix=${prefix} exec_prefix=${exec_prefix} \
[root@localhost bash-4.3.30]# whereis bash
bash: /usr/bin/bash /usr/local/bin/bash /usr/share/man/man1/bash.1.gz
[root@localhost bash-4.3.30]# /usr/bin/bas
base64 basename bash bashbug bashbug-32
[root@localhost bash-4.3.30]# /usr/bin/bash --version
GNU bash, version 4.2.45(1)-release (i686-redhat-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
[root@localhost bash-4.3.30]# /usr/local/bin/bash --version
GNU bash, version 4.3.30(1)-release (i686-pc-linux-gnu)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
[root@localhost bash-4.3.30]#
库文件查询
[root@localhost bash-4.3.30]# ldd bash
linux-gate.so.1 => (0xb779a000)
libtinfo.so.5 => /lib/libtinfo.so.5 (0x4e41c000)
libdl.so.2 => /lib/libdl.so.2 (0x4c65c000)
libc.so.6 => /lib/libc.so.6 (0x4c49c000)
/lib/ld-linux.so.2 (0x4c473000)
[root@localhost bash-4.3.30]#
[root@localhost shell_up_zhb]# chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
[root@localhost shell_up_zhb]# lsof /bin/sh
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 8522 root txt REG 253,1 917564 11014242 /usr/bin/bash
[root@localhost shell_up_zhb]# lsof /bin/bash
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 8522 root txt REG 253,1 917564 11014242 /usr/bin/bash
sh 8914 root txt REG 253,1 917564 11014242 /usr/bin/bash
[root@localhost shell_up_zhb]#
1以前的思路是拷贝升级后的可执行文件,库,配置文件(如果有),开始按此思路升级,失败,并且没法登陆。
2 后来发现chsh命令可以设置开机使用的sh,考虑升级登陆后的sh,开机使用另一个,升级成功后在,切换升级另一个。后来发现,系统实际上只用一个sh,次思路不对
3 bash升级只是为了修补心血漏洞,估计只需升级可执行文件即可。通过lsof发现,实际上使用的是/usr/bin/sh的shell,/bin/sh其实是连接,那就只拷贝/usr/bin/sh,/usr/bin/bash,拷贝时发现在使用,那就先复制在拷贝。
4 拷贝成功后,用测试例子试一下,发现可以
[NTP-Fedora20 shell_up_zhb]#env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
vulnerable
this is a test
[NTP-Fedora20 shell_up_zhb]#env x='() { :;}; echo vulnerable' ./bash -c "echo this is a test"
this is a test
5 reboot发现成功
shell升级完整记录的更多相关文章
- DS4700磁盘阵列的控制器微码升级操作记录(收录百度文库)
DS4700磁盘阵列的控制器微码升级操作记录 项目介绍: 于10年3月,XX地市区/州XX分公司相继反映生产读取数据速度较之前变得非常慢,表现在:日常报表抽取数据速度明显变慢,客户打开前台页面速度 ...
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(3)
继下面三篇文章完成了kvm虚拟化管理平台webvirtmgr环境的部署安装:kvm虚拟化管理平台WebVirtMgr部署-虚拟化环境安装-完整记录(0)kvm虚拟化管理平台WebVirtMgr部署-完 ...
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(2)
继上一篇kvm虚拟化管理平台WebVirtMgr部署-完整记录(1),接下来说说WebVirtMgr的日常配置:添加宿主机,创建虚机,磁盘扩容,快照等具体操作记录如下: 一.配置宿主机1.登录WebV ...
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(1)
公司机房有一台2U的服务器(64G内存,32核),由于近期新增业务比较多,测试机也要新增,服务器资源十分有限.所以打算在这台2U服务器上部署kvm虚拟化,虚出多台VM出来,以应对新的测试需求.当KVM ...
- Centos7.2 下DNS+NamedManager高可用部署方案完整记录
Centos7.2 下DNS+NamedManager高可用部署方案完整记录 之前说到了NamedManager单机版的配置,下面说下DNS+NamedManager双机高可用的配置方案: 1)机器环 ...
- 部署gerrit环境完整记录【转】
开发同事提议在线上部署一套gerrit代码审核环境,废话不多说,部署gerrit的操作记录如下:提前安装好java环境,mysql环境,nginx环境测试系统:centos6.5下载下面三个包,放到/ ...
- collection v1.3.1升级全记录
collection v1.3.1升级全记录 项目地址: https://github.com/jianfengye/collection 欢迎star. collection 手册地址: http: ...
- Centos 5.x 升级 python2.7,安装setuptools、mysqldb 完整记录
最近由于有个工作任务需要搭个虚拟机环境,但是环境是搭建在内网,无法直接联网,很多软件都不能直接yum安装, 安装过程实在十分不顺利,在此留个记录给有需要的朋友. 环境是 CentOS 5.7 x6 ...
- [原创]CI持续集成系统环境---部署Jenkins完整记录
Jenkins通过脚本任务触发,实现代码的自动化分发,是CI持续化集成环境中不可缺少的一个环节. 下面对Jenkins环境的部署做一记录. ------------------------------ ...
随机推荐
- Caffe搭建:Ubuntu14.04 + CUDA7.0 + opencv3.0 + Matlab2014A
从Hinton在science上发表深度学习训练开创新的文章以来,深度学习火了整整有3年多,而且随着新的硬件和算法的提出,深度学习正在应用于越来越多的领域,发挥其算法的优势. 实验室并没有赶上第一波深 ...
- spring MVC 统一异常处理(webapi和web分开处理)
转载: http://blog.csdn.net/m13321169565/article/details/7641978 http://blog.csdn.net/ethan_fu/article/ ...
- MySQL relay_log_purge=0 时的风险
转自: http://xiezhenye.com/2015/12/mysql-relay_log_purge0-%E6%97%B6%E7%9A%84%E9%A3%8E%E9%99%A9.html 有时 ...
- Hard to prepare 2018 徐州赛区网络预赛
题意: 就是由2k 个数 每次选一个 可以选同样的 围成一个圈 使得相邻的数同或为真 求方案数 解析: 第一个数有2k 种选择 之后的n-2个数 都有2k-1 种选择 第n个数 我们要考虑 它的左右 ...
- 【刷题】HDU 5883 The Best Path
Problem Description Alice is planning her travel route in a beautiful valley. In this valley, there ...
- 【BZOJ1024】[SCOI2009]生日快乐(搜索)
[BZOJ1024][SCOI2009]生日快乐(搜索) 题面 BZOJ 洛谷 题解 看到这个数据范围就感觉是爆搜.我们爆搜左右分成多少块,这样子左右的面积已知,再枚举一下横着切还是竖着切,这样子就可 ...
- 背包问题的优化(洛谷1776 宝物筛选_NOI导刊)
背包型dp,但是没有看清数据范围差点认为是水题了,(然后诡异的拿了20分)标解是:2进制优化,比较简单把每一类物品看做若干个相互独立的物品,放在一个另外的数组里,然后全局跑一边01就可以.主要思想是: ...
- 4.Kali 1.0 / 2.0 安装中文输入法(谷歌pinyin + 其他)
搜狗输入法安装可以参考这个:http://www.cnblogs.com/dunitian/p/6662374.html 1.kali默认是没有中午输入法的,需要自己安装一下 2.首先我们先获取roo ...
- SpringBoot中的定时任务与Quartz的整合
SpringBoot集成Quartz 定时任务Quartz : 就是在指定的时间执行一次或者循环执行,在项目的开发中有时候会需要的, 还是很有用的. SpringBoot内置的定时 添加依赖 < ...
- [0,x)的随机数
#include <cstdio> #include <cstdlib> #include <cmath> #include <cstring> #in ...