| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> ShellShock20.04版本 -> 正文阅读 |
|
[系统运维]ShellShock20.04版本 |
ShellShock20.04版本Topic
实验环境设置DNS Setting将IP10.9.0.80和www.seedlab-shellshock.com连接 使用cat /etc/hosts查看DNS设置hosts格式配置hosts文件可以配置主机ip与对应的主机名。在局域网或者是万维网上,每台主机都有一个ip地址,它区分开每台主机,并可以根据ip进行通讯。但是Ip地址不符合人脑的记忆规律,因此出现了域名,例如www.baidu.com.在一个局域网中,每台机器都有一个主机名,用于区分主机,便于相互访问。 hosts文件格式 Docker实验容器安装
关闭docker服务时,需要在新的终端,输入关闭指令
其中 ID号可以打印部分,因为ID号都是唯一的。
TASKTask 1: Experimenting with Bash Function设计一个程序,对比正常的Shell和有漏洞的ShellShock对代码的解析,判断是当前Shell是否存在漏洞 bash_shellshock运行后,输出extra,且foo函数解析不全,故当前shell有漏洞。 Task 2: Passing Data to Bash via Environment Variable
-v打印出HTTP请求和来自服务器的响应 -A选项,可以用来设置User-Agent字段 -e,改变Referer字段 -H,改变额外头字段
可以发现成功打印出了环境变量,当CGI程序被调用的时候,会首先FORK创建一个新进程,然后再使用exec()函数来执行CGI程序,因为CGI程序开头是#!/bin/bash,所以该程序是一个shell脚本,所以他执行后,bash会执行shell脚本,当创建子进程执行bash时,它为bash进程提供了环境变量,传递到子进程。其中有些环境变量可以通过人为控制传入指定的字符,例如USER_AGENT等。 Task 3: Launching the Shellshock Attack
指令解析:() { echo ”hello” ;};这一段就是新程序的一个函数。 echo Content_type: text/plain; echo;这一段就是告诉shell解析的时候保持为纯文本,不用其他的解释型语言来解析 /bin/cat /etc/passwd 查看/etc/passwd的文件内容。至于为什么不直接用cat指令,的确打印不出来,应该是无法识别,可能无法共享环境变量。 运行之后即可打开/etc/passwd文件 /ect/shadow文件需要root权限才能查看。seed用户通过/bin/cat 查看时会被拒绝访问 Question1:不能从shadow窃取密码,shadow只有root权限和shadow权限,seed用户无权限读取。 Question2:不能进行攻击,?之后的字符串能够注入能得到:QUERY_STRING=AAAAA;REQUEST_URI=/cgi-bin/getenv.cgi?AAAAA,且需要连续字符串;输入:
得到: Taks4:Getting a Reverse Shell via Shellshock Attack
Task 5: Using the Patched Bash如何修改docker内文件?一篇文章带你搞定如何在 Docker 创建的容器中修改配置
正常的bash,对该命令不会错误解析,造成ShellShock攻击,且能正确打印环境变量 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 22:31:34- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |