位置: IT常识 - 正文

什么是bashMAC OS手动升级Bash的方法(什么是suv汽车)

编辑:rootadmin
bash是一个应用于大多数基于Linux或Unix操作系统的命令行程序,那么该怎么升级Mac OS上的bash呢?下面与大家分享个不错的升级方法... 14-12-19

推荐整理分享什么是bashMAC OS手动升级Bash的方法(什么是suv汽车),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:什么是国家秘密,什么是四个菜,什么是国家秘密,什么是bash命令,什么是suv汽车,什么是bash命令,什么是suv汽车,什么是bash命令,内容如对您有帮助,希望把文章链接给更多的朋友!

  Bash是什么东东?很多用户们大概还不是很清楚吧,其实bash就是一个应用于大多数基于Linux或Unix操作系统的命令行程序,其中也包括Mac OS。那么该怎么升级Mac OS上的bash呢?现在小编就教大家一种手动升级的方法。

  什么是bash?

  bash是应用于大多数基于Linux或Unix操作系统的命令行程序,其中包括有Mac OS。如果你的操作系统的默认命令行shell是bash的话,它就可能被网络上远端的黑客用于攻击你的电脑。通过一个小小的脚本黑客便可以在你的电脑上加载程序或者更改特性,这些操作既不需要任何密码,也不需要了解任何你所知道的东西。他们可以使用你的文件,获取你的私密信息,删除数据,运行程序等等。

  危险性测试第一步:

  打开终端窗口,在shell中键入以下命令行,紧接着输入回车。终端可以在你电脑的应用文件夹的Utilities中可找到,你也可以使用快速搜索找到它。

  env x=‘() { :;}; echo vulnerable’ bash -c “echo this is a test”

  好结果是这样的

  如果你的电脑不存在被Shellshock漏洞威胁的隐患,那么终端的输出结果应该和下面的这一段差不多:

  bash: warning: x: ignoring function definition attemptbash: error importing function definition for `x‘this is a test

  糟糕的结果

  如果你的电脑存在被威胁的可能,那你看到的结果将会是下面这样:

  vulnerable this a test

  危险性测试第二步:

  如果你通过了第一个测试,那么试试下面的测试看看你的电脑能否抵御一种在星期四才被发现的新型攻击方式;

  env X=’(){(a)=》\‘ bash -c “echo date”; cat echo; rm -f echo

  好结果又是这样的

  如果你的电脑没有任何问题,那你应该会看到如下这样的输出(不输出任何与当前日期有关的内容):

  datecat: echo: No such file or directory

  坏结果是这样的

  如果你的电脑在劫难逃,那你会看的输出就是下面这种形式:

  date

  如图所示(下面输出的是我测试的时间):

  那么现在有更新了吗

  大多数Linux发行版已经有了专为Shellshock开发的补丁(虽然大多并不完整),不过Mac OS X用户至今还是没有收到任何消息,苹果对此事只字未提。最近Mavericks的更新10.9.5版本也没有对Shellshock有任何的修复。

  如果你感到惶恐不安,这里倒是有一个手动更新的方法让你机器上的GNU bash升级到更为安全的那个版本,在这里要感谢StackExchange的用户提供了有关方法。

  在你的Mac电脑上打开终端窗口,输入以下命令来查看你已经装上的shell版本(记得最后敲回车)。

  bash --version

  如果你的GNU bash版本号为3.2.51(1)-release, 那你需要升级到3.2版本的最新版3.2.53,如果你已经照着这篇教程升级到过3.2.52(1)-release,那你需要照着下面的做完以确保更新到最新版本使你的电脑得到完全的保护。

  bash除此外还有其它更新的版本,不过Mac OS只支持3.2分支。如果你是Linux用户,你想要确保下载到与你当前使用的bash版本相匹配的补丁。那你可以在这里找到各种主要版本的最近更新,包括3.0, 3.1, 3.2, 4.0, 4.1, 4.2, 和4.3。

  你可以根据以下教程手动编译bash的最新版本(3.2.53),但是首先你需要在你的电脑上安装有一个苹果的Xcode工具。如果你没有安装过这个工具,那你需要照着下面的准备工作章节做下去。

  如果你不想升级bash,这里有个由红帽提供的解决方案,不过它还并没有通过完整的测试,因此我并不推荐这个。

  准备工作

什么是bashMAC OS手动升级Bash的方法(什么是suv汽车)

  你需要确保你已经装上了Xcode,并同意了苹果的条款,在老一些的Mac上,你还要确保你装上了命令行工具。

  你也可以在Mac App Store上下载到免费的Xcode。

  如果你的Mac OS X版本太老而不能在Mac App Store上下载到可用的Xcode,你可以使用你的Apple ID登录开发者中心去搜索一个合适的版本并下载。如果你是Mac OS10.7或者10.8用户,那么请在开发者下载页面的左边的搜索框里搜索Xcode 4.6.3.

  在你装了Xcode之后,在你的应用文件夹内找到并运行它,之后同意相关条款。最开始加载的时候可能会花费一些时间。之后你需要确认是否有可用而完整的命令行工具,做法如下:

  打开Xcode,在顶部的菜单栏里打开菜单。

  点击选项。

  点击下载标签。

  在下载列表里面找到命令行工具之后点击下载。

  提示:如果你没有看到命令行工具选项那就证明你已经装上了。

  做完之后,你就为系统补丁做好了所有准备工作了。

  第一步:下载并编译补丁

  当你确定装上了Xcode,再次打开终端命令行并输入一下命令,然后回车。每一行是一个命令,因此一定要整行复制。

  mkdir bash-fixcd bash-fixcurl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf -cd bash-92/bash-3.2curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-052 | patch -p0cd 。.xcodebuild

  进程会跑上一段时间,你会看到在终端里一大串输出,那是因为Xcode正在你的电脑上编译新的bash。等它运行完毕,输出“BUILD SUCCEEDED”之后你会看到一个新的终端窗口。

  第二步:下载编译并建造第二个补丁

  这一步添加于太平洋夏令时2014.9.26 3:00pm,该补丁主要针对于新的攻击方式。如果想了解更多请看文章开头的更新说明。

  mv build/bash.build/Release/bash.build/DerivedSources/y.tab.* bash-3.2/cd bash-3.2curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-053 | patch -p0cd 。.xcodebuild

  再一次,你会在完成的时候看到“BUILD SUCCEEDED”。

  第三步:备份你当前版本(建议)

  为避免发生某些错误,备份你当前使用的bash版本是个不错的选择,你可以在终端输入以下两行命令。

  注意在这一步你很可能被提示需要输入一个密码,这个密码就是你用于登录Mac的那个密码。当你敲击的时候并不会在终端看到回显,如果你的密码过于复杂的话在提示密码错误的情况下你可以试试多输入几次。

  sudo cp /bin/bash /bin/bash.oldsudo cp /bin/sh /bin/sh.old

  你不会看到任何确认信息,但是它已经备份完了,如果在第五步之后发生了错误的话。你还可以用复制命令找回你以前的老版本bash,将“.old”复制为原始文件(即没有“.old”部分)。

  第四步:确认你新建的版本信息

  在终端里输入以下命令以确认你在电脑上新建的bash是最新版本:

  build/Release/bash --versionbuild/Release/sh --version

  输出的文本应该是bash版本为3.2.53(1)-release你才可以确认你编译了正确的版本。

  第五步:使用新版本替换你老版的bash

  全部做完之后。你只需复制你新版的bash覆盖掉老版的bash,使用以下命令完成:

  sudo cp build/Release/bash /binsudo cp build/Release/sh /bin

  现在,再来测试一下看看电脑是否还是会输出那个好结果:

  env x=’() { :;}; echo vulnerable‘ bash -c “echo this is a test”

  然后来进行第二测试:

  env X=’(){(a)=》\‘ bash -c “echo date”; cat echo; rm -f echo

  如果日期依旧显示,那么检查一下你的home文件夹下是否有一个名为echo的文件在你测试的时候被创建。如果是的,那么删除它再试一次。如果这样还是依旧输出日期,那么很可能是你遗漏了上面刚刚更新的第二步。如果你认为你在所有的命令行中没有任何输入错误,你也可以删掉你的bash-fix文件夹之后从第一步开始重来。如果没有什么问题也请删除bash-fix文件夹——因为那只是个临时目录而已。

  以上就是手动升级你Mac OS中的bash的操作方法了,有需要升级bash的用户,可以参考这种方法,对自己的bash进行升级。

本文链接地址:https://www.jiuchutong.com/zhishi/276110.html 转载请保留说明!

上一篇:vue3 组件间互相通信(包括父子、爷孙、兄弟、全局)(vue组件相互引入)

下一篇:主板BIOS语言,中文解释(各种主板bios中文设置图解)

  • 如何看自己评论别人的朋友圈(如何看自己评论过的空间)

    如何看自己评论别人的朋友圈(如何看自己评论过的空间)

  • 健康云二维码怎么弄(健康云二维码怎么扫)

    健康云二维码怎么弄(健康云二维码怎么扫)

  • 苹果13pro雷达扫描仪怎么用(苹果13pro激光雷达扫描仪)

    苹果13pro雷达扫描仪怎么用(苹果13pro激光雷达扫描仪)

  • 华为荣耀8x和9x区别(华为荣耀8X和vivoz3i哪个好)

    华为荣耀8x和9x区别(华为荣耀8X和vivoz3i哪个好)

  • 小米桌面下面的搜索栏怎么去掉(小米桌面下面的小爱怎么关)

    小米桌面下面的搜索栏怎么去掉(小米桌面下面的小爱怎么关)

  • 华为手机拉黑拦截的信息在哪里看(华为手机拉黑号码 对方听到什么)

    华为手机拉黑拦截的信息在哪里看(华为手机拉黑号码 对方听到什么)

  • 打电话可以注销手机卡吗(打电话可以注销卡吗)

    打电话可以注销手机卡吗(打电话可以注销卡吗)

  • 苹果免密支付可以申请退款吗(苹果免密支付可以开吗)

    苹果免密支付可以申请退款吗(苹果免密支付可以开吗)

  • 移动网络机顶盒设置密码是多少(移动网络机顶盒怎么刷机教程)

    移动网络机顶盒设置密码是多少(移动网络机顶盒怎么刷机教程)

  • 显卡后面的字母是什么意思(显卡后面的字母h是什么意思)

    显卡后面的字母是什么意思(显卡后面的字母h是什么意思)

  • 有锁机黑解是什么意思(有锁机黑解完就没事了吗)

    有锁机黑解是什么意思(有锁机黑解完就没事了吗)

  • 空气开关c20是多少瓦(空气开关c20是多少安电流)

    空气开关c20是多少瓦(空气开关c20是多少安电流)

  • 360浏览器如何翻译整个网页(360浏览器如何翻译英文)

    360浏览器如何翻译整个网页(360浏览器如何翻译英文)

  • 淘宝昵称可以改几次(淘宝昵称可以改回原来的吗)

    淘宝昵称可以改几次(淘宝昵称可以改回原来的吗)

  • 户户通怎么重新安装(户户通怎么重新开通)

    户户通怎么重新安装(户户通怎么重新开通)

  • 苹果手机怎么清理缓存(苹果手机怎么清理垃圾)

    苹果手机怎么清理缓存(苹果手机怎么清理垃圾)

  • 逗拍怎么把照片放进去(逗拍怎么把照片变清晰)

    逗拍怎么把照片放进去(逗拍怎么把照片变清晰)

  • ipad存储文件在哪里(ipadpro存储文件)

    ipad存储文件在哪里(ipadpro存储文件)

  • 怎样改qq群里的备注名(怎样改qq群里的个人头衔)

    怎样改qq群里的备注名(怎样改qq群里的个人头衔)

  • opporeno是5g手机吗(opporeno1是5g)

    opporeno是5g手机吗(opporeno1是5g)

  • 冷风机比空调省电吗(冷风机费电还是空调费电)

    冷风机比空调省电吗(冷风机费电还是空调费电)

  • win10怎么删除电子邮箱账户(win10怎么删除电脑开机密码设置)

    win10怎么删除电子邮箱账户(win10怎么删除电脑开机密码设置)

  • 如何解决Win10插了耳机电脑还是外放?(win10插usb没有反应)

    如何解决Win10插了耳机电脑还是外放?(win10插usb没有反应)

  • 魅族路由器mini怎么设置?使用手机设置魅族路由器mini图文教程(魅族路由器mini刷机)

    魅族路由器mini怎么设置?使用手机设置魅族路由器mini图文教程(魅族路由器mini刷机)

  • uniapp详细介绍(uniapp简介)

    uniapp详细介绍(uniapp简介)

  • 织梦kindeditor编辑器插入mp4视频不显示及不过滤video的方法(织梦cms怎么样)

    织梦kindeditor编辑器插入mp4视频不显示及不过滤video的方法(织梦cms怎么样)

  • 销售利税率计算公式及分析
  • 储值卡金额算什么科目
  • 处置无形资产属于经营活动吗
  • 资产处置收益计入利润总额吗
  • 软件开发增值税免税吗
  • 单位结算卡和公账是一张卡吗
  • 公司账外现金
  • 企业养老金计算公式举例说明
  • 销售部预借差旅费什么凭证
  • 筹建期结转损益吗
  • 建筑业预交税金怎么计算
  • 开出支票支付属于什么会计科目
  • 企业自建厂房转让如何计算增值税
  • 购买可供出售金融资产的交易费用
  • 股权转让是把公司卖了吗
  • 公司临时聘用人员法规
  • 印花税本月没有,忘记零申报,有影响吗了
  • 简易注销还要去找专管员
  • 普票3点怎么算
  • 收到供应商开具什么发票
  • 一个企业为另一个企业作证有法力
  • 发票冲红还需要作废吗
  • 加计抵减什么时候做账务处理
  • 企业公司报税流程
  • 可持续增长率计算例题
  • 收到购货方退回的发票联和抵扣联如何处理?
  • 采购不签合同
  • windows全部禁用
  • cpu性能排行榜天梯图快科技
  • 土地增值税清算是什么意思
  • 实缴注册资本股权转让怎么交税
  • 电脑刷新率怎么调低
  • yolov8训练自己的数据
  • 旧房屋转卖的协议怎么写
  • 上级拨付的债券会计分录
  • 企业所得税年报截止日期2023
  • uniapp components
  • 社保基数和实际工资怎么算
  • 金税盘到上传截止日期
  • 社保可以不计提直接缴纳吗
  • 印花税的特点是
  • 公允价值进行会计计量
  • 购买方已抵扣怎么做分录
  • 职业年金是不是养老保险
  • 等线支付给劳务派遣单位的工资怎么做账?
  • 会计凭证借贷方哪个是收入
  • 财务费用为什么是向债权人支付的现金流量
  • 建筑行业工程施工当月可以不结转吗
  • 计提医疗保险费的会计分录
  • 费用冲账是什么意思
  • 关联交易现金流
  • 优秀员工奖金领取表模板
  • 银行利息收入如何记账
  • 公司车辆保养计入什么费用
  • 收到保险公司的赔款怎么做账
  • 银行的结息怎么做会计分录
  • 调整后视镜
  • linux彻底卸载软件
  • mysqldump mysqlpump
  • sql2005 create file遇到操作系统错误5拒绝访问 错误1802
  • 数据库高并发怎么解决
  • mysql数据库的总结
  • freebsd 安装
  • vc6_cn_full.exe
  • 装xp系统鼠标键盘没有驱动
  • 怎么操作win10系统
  • win10系统edge浏览器兼容性
  • spybuddy.exe - spybuddy是什么进程
  • inc是什么软件
  • win7系统怎么看wi-fi密码
  • win7win10双硬盘双系统
  • Linux如何使用命令
  • js domcontentloaded
  • unity4.1
  • jquery页面跳转的方法
  • linux怎么查看tomcat位置
  • Unity 相关经典博客资源总结(持续更新)
  • unity引擎工具
  • 成都高新区税务局办税服务厅电话
  • 我国公益性企业有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设