- 浏览: 436158 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
adaylee:
貌似好久没上了
用iptables 实现本地端口转发 -
adaylee:
鲫鱼?哈哈,居然Google到你了
用iptables 实现本地端口转发 -
yflxc:
com.sun.jimi.core.raster.JimiRa ...
java对图片进行等比例缩放 -
bo_hai:
等比例压缩的算法是不是可以改进呢?
java对图片进行等比例缩放 -
Mr.TianShu:
http://www.cppblog.com/deercode ...
java 遍历目录下的文件
无论是Windows系统还是Linux系统都是基于权限控制的,其严格的用户等级和权限是系统安全的有力保证。这么严密的用户权限是否不可逾越呢?下面笔者反其道而行之进行Windows及Linux下的提权测试。
一、windows下获取至高权限
大家知道,在Windows系统中SYSTEM是至高无上的超级管理员帐户。默认情况下,我们无法直接在登录对话框上以SYSTEM帐户的身份登录到Windows桌面环境。实际上SYSTEM帐户早就已经“盘踞”在系统中了。想想也是,连负责用户验证的Winlogon、Lsass等进程都是以SYSTEM身份运行的,谁还能有资格检验SYSTEM呢?既然SYSTEM帐户早就已经出现在系统中,所以只需以SYSTEM帐户的身份启动Windows的Shell程序Explorer,就相当于用SYSTEM身份登录Windows了。
1、获得特权
打开命令提示符,输入命令“taskkill /f /im explorer.exe” 并回车,这个命令是结束当前账户explorer即图形用户界面的Shell。然后在命令提示符下继续输入“at time /interactive %systemroot%\explorer.exe”并回车。其中“time”为当前系统时间稍后的一个时间,比如间隔一秒,当前系统时间可以在命令提示符下输入“time”命令获得。一秒钟后会重新加载用户配置,以SYSTEM身份启动Windows的shell进程Explorer.exe。
2、身份验证
如何知道exeplorer.exe是以system权限运行呢?我通过“开始”菜单可以看到最上面显示的是system账户。另外,打开注册表编辑器,只要证明HKCU就是HKU\S-1-5-18的链接就可以了(S-1-5-18就是SYSTEM帐户的SID)。证明方法很简单:在HKCU下随便新建一个Test子项,然后刷新,再看看HKU\S-1-5-18下是否同步出现了Test子项,如果是,就说明系统当前加载的就是SYSTEM帐户的用户配置单元。当然最简单的是在命令提示符号下输入命令“whoami”进行验证,如图所示显示为“NT AUTHORITY\SYSTEM”这就证明当前exeplorer.exe是System权限。
3、大行其道
System权限的Explorer.exe在实际中有什么用呢?下面笔者随意列举几个使用实例。
(1).注册表访问
我们知道在非SYSTEM权限下,用户是没有权限访问某些注册表项的,比如“HKEY_LOCAL_MACHINE\SAM”、“HKEY_LOCAL_MACHINE\SECURITY”等。这些项记录的是系统的核心数据,某些病毒或者木马会光顾这里。比如在SAM项目下建立具有管理员权限的隐藏账户,这样的帐户在命令及“本地用户和组”管理器(lusrmgr.msc)中是无法看到的,造成了很大的安全隐患。在“SYSTEM”权限下,注册表的访问就没有任何障碍,我们打开注册表定位到“HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account”项下所有的隐藏帐户就都暴露了。
(2).访问系统还原文件
系统还原是windows系统的一种自我保护措施,它在每个磁盘根目录下建立“System Colume Information”文件夹,保存一些系统信息以备系统恢复是使用。该文件具有系统、隐藏属性管理员用户是没有操作权限的。正因为如此,它成了病毒、木马的栖身之地,我们就可以在System权限下进入该文件夹删除病毒。当然,你也可以关闭“系统还原”预防此类病毒,但这样未免显得被动,有些因噎废食。
(3).更换系统文件
Windows系统为系统文件做了保护机制,一般情况下你是不可能更换系统文件的,因为系统中都有系统文件的备份,它存在于c:\WINDOWS\system32\dllcache(假设你的系统装在C盘)。当你更换了系统文件后,系统自动就会从这个目录中恢复相应的系统文件。当目录中没有相应的系统文件的时候会弹出提示让你插入安装盘。
在实际应用中如果有时你需要Diy自己的系统修改一些系统文件,或者用高版本的系统文件更换低版本的系统文件,让系统功能提升。比如Window XP系统只支持一个用户远程登录,如果你要让它支持多用户的远程登录。要用Windows 2003的远程登录文件替换Window XP的相应文件。这在非SYSTEM权限下很难实现,但是在SYSTEM权限下就可以很容易实现。
从Windows 2003的系统中提取termsrv.dll文件,用该文件替换Windows XP的C:\WINDOWS\system32下的同名文件。(对于Windows XP SP2还必须替换C:\WINDOWS\$NtServicePackUninstall$和C:\WINDOWS\ServicePackFiles\i386目录下的同名文件)。再进行相应的系统设置即可让Windows XP支持多用户远程登录。
(4).手工杀毒
用户在使用电脑的过程中一般都是用Administrator或者其它的管理员用户登录的,中毒或者中马后,病毒、木马大都是以管理员权限运行的。我们在系统中毒后一般都是用杀毒软件来杀毒,如果杀软瘫痪了,或者杀毒软件只能查出来,但无法清除,这时候就只能赤膊上阵,手工杀毒了。
在Adinistrator权限下,如果手工查杀对于有些病毒无能为力,一般要启动到安全模式下,有时就算到了安全模式下也无法清除干净。如果以SYSTEM权限登录,查杀病毒就容易得多。
以一次手工杀毒为例,(为了截图在虚拟机上模拟了前段时间的一次手工杀毒。)打“Windows 任务管理器”,发现有个可疑进程“86a01.exe”,在Administrator管理员下无法结束进程见图5,当然更无法删除在系统目录下的病毒原文件“86a01.exe”。以System权限登录系统,进程被顺利结束见图6,然后删除病毒原文件,清除注册表中的相关选项,病毒被彻底清理出系统。
System权限是比Administrator权限还高的系统最高权限,利用它可以完成很多常规情况下无法完成的任务。当然,最大的权限也就意味着更大的危险,不要因为手握“尚方宝剑”就滥杀无辜。
二、Linux下授权测试
类似于Windows系统Linux系统中用户是具有权限属性的,甚至它的权限设置更为严格。我们知道在Linux系统中root是管理员用户拥有最高的权限,除此之外的其他用户是普通用户其权限都是受限的。如何让普通用户也具有root权限当管理员使用呢?下面笔者搭建环境,以重启网络操作为例进行Root授权演示。
环境说明:
OS:Fedora Core 6 (域名:ns.linux.com.cn)
Tools:PuTTY(SSH/Telnet远程登录)
1、登录系统
运行PuTTY,首先以Root用户远程登录系统,输入用户名、密码成功登入系统。然后以普通用户hacker远程登录输入用户名、密码进入系统。
2、权限测试
在Root用户登录窗口中我们输入命令“/etc/init.d/network restart”重启网络服务,如图7所示启动成功。然后在hacker用户登录窗口输入同样的命令重启网络,显示失败,可以普通用户hacker是没有执行该命令的权限的。
3、Root授权
要使得普通用户hacker也具有重启网络的权限,我们需要修改/etc/sudoers文件。输入命令“ls -l /etc/sudoers”查看root用户默认对该文件只有“读”权限,是没有办法修改的。对此,我们可以修改其权限让Root用户可以修改,也可以用vi打开该文件修改然后强行保存退出,当然最方便的是用“visudo”命令进行编辑。
定位到“# User privilege specification”下,按照格式“username host username command”进行输入。其中第一个字段是用户名(被授权用户),第二个自动是主机位(用域名、IP地址都可以),第三个字段是用户名(授权用户),第四个字段是命令(授权用户可以执行的命令,可以用别名)。结合实例我们添加如下字段:hacker All = (root) /etc/init.d/network 即授权hacker用户以Root权限运行/etc/init.d/network,最后保存退出。
4、权限测试
在hacker用户窗口中输入命令:sudo /etc/init.d/network restart,看hacker是否可以重启网络,说明授权成功。这里必须要说明的是必须以“sudo”来运行命令,因为sudo命令会调用“/etc/sudoers”脚本,刚才的授权才会生效。另外,在命令执行前要输入密码,这个密码是当前用户即hacker的密码。
5、延伸
我们通过修改/etc/sudoers文件可以灵活地进行用户赋权,赋予不同的用户执行特殊命令的权限。/etc/sudoers文件中添加的信息,其中用户、命令都可以用别名,被授权用户可以是多个,命令可以是多条。我们通过修改该文件进行用户授权是一定要慎重,防止授权过大造成系统安全隐患。比如我们在该文件中添加这样的字段angel ALL = (ALL) ALL,这样的话angel用户就具有了系统的所有权限,就相当于另一个Root用户。下面我们操作测试一下。
新建test用户并设置密码,然后从在hacker登录窗口中通过命令su -angel 切换到angel用户,看看权限过大会产生什么后果。大家知道/etc/passwd是保存用户密码的文件,我们输入sudo vi /etc/passwd用sudo命令调用vi打开该文件,定位到root行,可以看到有个“x”号表示root用户设置了密码,我们删除“x”字段最后保存退出。输入命令more /etc/passwd | grep root查看“x”被成功删除,root用户就是空密码了。在angel窗口输入命令sudo root可以看到空密码可以进入到Root登录窗口。
总结:本文关于Windows、Linux本地用户提权测试,只是从技术上提供一个思路,至于提权以后可以用来干什么还需要我们大家深入挖掘。
发表评论
-
用iptables 实现本地端口转发
2010-07-14 14:54 52707场景 假如你在用 resin 调试一个 Web 程 ... -
ssh自动断开解决办法
2010-07-10 11:56 3425用putty/SecureCRT连续3分钟左右没有输入, 就自 ... -
简单使用ssh密钥认证
2010-07-09 20:52 7668A机器(ssh连接发起端,即客户端): 添加一个测试用 ... -
ntpd no server suitable for synchronization found
2010-06-29 10:15 9001当用ntpdate -d 来查询时 ... -
ulimit
2010-06-23 09:49 3173ulimit 用于限制 shell 启动进程所占用的资源,支持 ... -
iptables中DNAT与SNAT的理解
2009-10-16 15:16 1448DNAT(Destination Network Addres ... -
jsvc 设置tomcat自启动
2009-08-19 20:00 2558一. 环境1.操作系统: Suse Linux 102.j ... -
查看系统信息
2009-07-31 09:56 956系统 # more /proc/cpuinf ... -
tomcat 自动启动
2009-05-06 22:49 1002如配置tomcat为Linux启动服务 1:编写启动服务的文 ... -
lsof
2009-04-27 16:56 1276一般root用户才能执行lsof命令,普通用户可以看见/usr ... -
Ubuntu使用技巧
2009-04-27 15:52 2000查看软件xxx安装内容 dpkg -L xxx ... -
linux 时区设置
2009-04-26 12:59 2840Local vs. UTC首先重要的问题是你使用utc还是lo ... -
Linux系统信息查看命令大全
2009-04-26 11:57 1243# uname -a # 查看内核/操作系统/CPU信息# h ... -
linux后台进程管理
2008-12-24 20:11 6563原文地址 http://blog.china ... -
Linux下两种自动启动Tomcat的方法
2008-12-08 00:07 1912很多办法可以让Tomcat在系统启动的时候自动运行,我这里介绍 ... -
教你十种提高Linux系统安全性的招数
2008-12-06 23:21 1303Linux不论在功能上、价格上或性能上都有很多优点,然而,作为 ... -
linux系统安全设置
2008-12-05 22:25 990如今许多中小用户因业务发展,不断更新或升级网络,从而造成自身用 ... -
linux 文件和目录的权限
2008-11-27 14:33 2175在所属普通帐号user的文件夹中, 删除了文件所属为root的 ... -
linux下date命令详解
2008-11-25 19:05 4308名称 : date 使用权限 : 所有使用者使用方式 : da ... -
sudo说明及使用
2008-10-31 16:01 2470“Sudo” 是Unix/Linux平台上的一个非常有用的工具 ...
相关推荐
在IT安全领域中,系统提权(Privilege Escalation)是指攻击者通过利用操作系统中的漏洞或配置错误,将自身的权限提升到更高的级别,如Linux下的root权限或Windows下的Administrator权限。这通常涉及到一系列的技术...
windows server 2003 系统提权 课程名称:《系统提权》 【要求】 对Windows Server2003操作系统MS08_067、MS03_026漏洞进行提权渗透测试; 对MS03_026漏洞开启远程桌面服务; 操作过程可自由发挥; 概念越详细越好...
- **服务与进程权限**:很多提权方法是通过滥用高权限服务或进程实现的,比如利用System权限的服务进行提权。 - **提权工具**:熟练使用各种提权工具,如Metasploit、Windows Exploit Suggester、Privilege ...
本篇文章主要介绍10款针对Linux和Windows系统的提权辅助工具,帮助安全研究人员或系统管理员检测和防止潜在的提权风险。 1. **Linux_Exploit_Suggester**: 这个工具根据Linux操作系统的版本号,自动推荐相应的提...
- **提权至root用户**: 类似于Windows中的提权概念,在Linux系统中则是将普通用户提升至拥有最高权限的root用户。 #### 五、常见提权环境介绍 ##### 5.1 Webshell - **定义**: Webshell是通过Web应用漏洞上传到...
蚁剑,全称为“蚁剑渗透测试工具”,...这个压缩包提供了最新的双系统版本,意味着无论你是Linux还是Windows用户,都可以立即开始你的渗透测试之旅。记得在使用过程中遵守法律和道德规范,只用于合法的安全测试和防御。
### CVE-2021-36934:Windows提权漏洞详解 #### 一、漏洞概述 CVE-2021-36934(也被称为HiveNightmare)是存在于Windows操作系统中的一个高危本地权限提升(Local Privilege Escalation, LPE)漏洞。该漏洞首次被...
20. Windows 提权可分为纵向提权与横向提权? 知识点:Windows 提权可以分为纵向提权和横向提权,纵向提权是指低权限角色获得高权限角色的权限,横向提权是指获取同级别角色的权限。 21. Windows 常用的提权方法?...
2. **利用内核漏洞**:发现和利用内核级别的安全漏洞,如本地拒绝服务(DoS)或提权漏洞,以获取root权限。 3. **文件系统漏洞**:查找具有不正确权限的敏感文件,如系统配置文件、SSH密钥等,攻击者可能篡改这些...
Windows中的权限提升技术包括提权漏洞利用、服务漏洞、本地安全策略调整等。 五、持久化 为了确保即使系统重启也能保持控制,攻击者会尝试在系统中建立持久化机制,例如创建自启动项、利用注册表、服务或计划任务。...
例如,`sudo`命令的不当配置可能导致提权,`SUID`和`SGID`程序的漏洞可以被利用,还有内核级别的漏洞,如Linux的`Dirty COW`或者Windows的`ETW`(Event Tracing for Windows)漏洞。 3. **C语言相关**:标签中的"C...
此外,该软件支持多平台间的互连,不仅限于Windows系统,还能与Linux、Mac OS甚至移动设备配合使用,实现了跨平台的远程控制。 在运维工作中,RealVNC的远程协助功能尤为实用。当遇到用户无法解决的技术问题时,...
而在Linux系统中,他们会利用内核溢出或提权工具来获取更高权限。 7. **痕迹清理**:为了防止被追踪,攻击者会清除Windows日志、破坏日志记录功能,甚至清除RDP记录。他们也可能使用Metasploit等工具来消除其他类型...
- **案例二**:使用 Metasploit 实现对 Windows 主机的提权操作。 - **案例三**:模拟社会工程学攻击,获取员工登录凭证。 #### 八、Metasploit 的社区与支持 Metasploit 社区非常活跃,不仅有大量用户分享自己的...
4. **权限提升**:探讨如何利用已知漏洞获取更高的系统权限,例如本地提权和横向移动,这在Windows和Linux环境中都至关重要。 5. **Web应用程序渗透**:讲解针对Web应用程序的渗透技术,包括OWASP Top Ten漏洞的...
尝试切换到该用户并寻找提权方法,例如通过利用系统漏洞或滥用权限。 11. **寻找Flag**: 最后,攻击者通常会寻找所谓的“flag”,这是网络安全挑战中常用的术语,表示成功渗透的证明。在实际环境中,这可能是系统...
- **提权**: 通过各种手段获得更高的权限,如管理员权限。 - **用户HASH获取**: 获取用户的哈希值,用于破解密码。 - **横向渗透**: 在同一域内移动到其他主机进行渗透测试。 - **域渗透**: 针对整个域进行渗透测试...
此外,利用内核漏洞、提权利用(如本地溢出)、配置错误(如sudo或cron)也是常见方法。 2. **Windows 特权升级** 在Windows系统中,攻击者可能通过利用服务漏洞、权限管理不善(如UAC绕过)、DLL注入、恶意驱动...
- 漏洞与操作系统及其版本密切相关,如Oracle在不同系统(DOS、Windows、Unix、Linux及其他)上的表现各异,特别是缓冲区溢出漏洞通常不跨平台。 4. **漏洞危害范围**: - **危害数据库自身**:直接影响数据库...
6. **内核级漏洞**:如本地提权、内核漏洞利用等。 7. **社会工程学**:有时,通过人为因素而非技术手段也能实现权限提升。 枚举的知识点可能涵盖: 1. **端口扫描**:使用Nmap、masscan等工具进行端口发现,识别...