后台权限:操作web界面内容的权限,无法操作程序的源代码或资源文件的(如果后台有文件操作的功能,例外可以)
获取方式:爆破,注入,猜解,弱口令
网站权限:可以查看和修改程序源代码,可以进行配置文件读取(接口配置,数据库配置等)
获取方式:爆破,注入,猜解,弱口令
接口权限:邮件,短信,支付,第三方登录
获取方式:在后台权限(修改配置信息功能点)和网站权限(查看配置文件)获得后获取,
数据库权限:增删改查
系统权限:
域控权限:
1.webshell
Ⅰ.后台:
①功能点:
文件上传,模板修改,sql执行,数据备份等等
②思路点:
已知程序:网上找拿shell的方式,或者知道cms,从网上下载下来,直接代码审计
未知程序:
Ⅱ.漏洞:
①单点漏洞:
文件上传,文件包含,rce,sql注入
②组合漏洞:
同时配合
Ⅲ.第三方:
①编辑器
②中间件平台
③phpmyadmin
2.其他权限:
Ⅰ.数据库
Ⅱ.服务类
Ⅲ.第三方接口
3.服务器系统:
Ⅰ.windows:
①针对环境:
1)web
2)本地
②提权方法:
1)数据库(获得root数据库权限,从而利用数据库提升到系统权限):
探针:
端口:扫描端口,看看哪一个数据库的对应端口开放
服务:
其他
收集密码:
配置文件:网站的配置文件,conf,config等等
存储文件:
mysql-.myd文件就是存储的文件,root存储在data目录下的mysql数据库目录中的user表中
暴力猜解:少用
其他方式
分类:
mysql:
UDF:mysql查找存储路径的命令-select @@basedir; MySQL版本大于5.1,导出目录为/lib/plugin/
若小于5.1,导出目录为c:/windows/或者system32
反弹shell
获得root权限后,可以执行允许外联的命令
mssql(最高权限是sa,但普遍都支持外联):
xp_cmdshell:在mssql2005版本之后是关闭状态,在sp_configure开启
sp_oacreate:若关闭,则也在sp_configure开启,若执行结果没有回显,可以利用输出文件来查看
sp_oamethod
沙盒提权:网上有文章
映像劫持
orcle(一般搭配asp使用,asp的web权限普通都是system权限):
普通用户,DBA用户,注入模式:有直接的工具,网上的orcleshell工具
redis:
利用计划任务执行命令反弹shell--需要前提,允许外连
写ssh-keygen公钥使用私钥登录--条件更苛刻
低权限写webshell--很难实现
postgresql:
CVE-2018-1058:低权限情况下用
CVE-2019-9193:高权限情况下用
2)溢出漏洞:利用msf或者手工写的exp来进行使用提权,都是利用系统漏洞来提权
3)令牌窃取:(windows才行,2008之后的不行)
msf先生成后门文件,靶机运行后门文件,反弹shell成功后,利用令牌窃取进行提权到system
use incognito
list tokens -u
impersonate_token "NT AUTHORITY\SYSTEM"
4)第三方软件(dll劫持):
相当鸡肋,前提条件:需要安装特殊的第三方软件,还得经常使用
5)AT&SC&PS:
AT:在2003版本才行,直接提权,命令 at 时间 /interactive cmd.exe 等待时间到即可
SC:2003,7版本可以 sc create syscmd binpath="cmd /k start" type=own type=interact 再执行 sc start syscmd
PS:2008版本 需要pstool工具(微软官方的) psexec.exe -accepteula -s -i -d cmd.exe
6)不安全的服务权限配合(本地提权):
需要下载AccessChk文件(微软官方的)
accesschk.exe -uwcqv "用户" *
sc config "对应服务" binpath="上传恶意文件的路径(也是利用了7)的原理)"
sc start "对应服务"
7)不带引号的服务路径:
比如:C://program files/a.exe -f,windows识别到空格,认为后面是参数,正确的应该是”C://program files/a.exe“ -f
假如在C://加一个program恶意文件exe后缀,再次执行,则该恶意文件会被执行
查找上述情况的命令:wmic service get name,displayname,pathname,startname | findstr /i "Auto" | findstr /i /v "c:\Windows\\" | findstr /i /v """
在webshell中启动服务的命令:sc start+”服务名“
8)Unattended Installs
9)AlwaysInstallElevated提权:需要以系统权限开启,才能进行从普通权限提到系统权限的操作,非常鸡肋
10)进程注入提权:
利用有system的进程,注入,让其释放权限,从而得到system权限
很鸡肋 pexec64进程注入工具
11)烂土豆(rotten potato)配合令牌窃取提权:
获得webshell后,将烂土豆执行,然后进行令牌窃取即可
③相关知识:
systeminfo主要看操作系统版本,系统类型,多少位数,打过的补丁、
linux监听端口的命令:nc -l -p 端口号
Ⅱ.linux:
①针对环境:
web
本地
②信息收集:(Linenum.sh,linuxpprivchecker.py工具)
内核信息
用户群组
环境信息
进程服务
计划任务
有无ssh私钥
有无明文密码
可读写执行目录
③提权方法:
SUID:
chmod u+s 文件,执行此条命令,该文件就会以root权限执行(前提条件,得有可用于产生shell得命令)
找可用得命令:find / -user root -perm -4000 -print 2>/dev/null(手工方法)
以find命令为例子:
touch qiaokai
find qiaokai -exec id\
内核漏洞:
利用得是系统漏洞(CVE-2017-16695)
还有一个脏牛漏洞,利用vulnhub中的靶机去复现
环境变量:
ps=sh,伪装成sh,比较鸡肋,需要配合SUID机制
定时任务:(cat /etc/crontab查看定时任务命令)
路径问题
命令问题:利用tar压缩,文件名改为--参数类型,从而执行 ,利用定时任务,和SUID(其他命令也可,换文件名-参数)
权限问题:不安全的权限分配,所有权限都是777,就可以进行覆盖操作了
第三方服务:利用数据库等进行提权
④漏洞扫描工具:
linux-exploit-suggester.sh,linux-exploit-suggester-2.pl
Ⅲ.工具:
wesng
windowsvulnscan
msf
Ⅳ.基本流程:
先获得webshell,然后进行上传一些文件,进行测试提权(msf或者手动的EXP),然后创建用户,开启端口,远程连接