在2008年3月的技巧中,我谈了一些Windows系统中最有用的命令行工具:包括WMIC、net、openfiles、netstat和查找命令。这次,我将集中阐述五个比较有用的命令,并分析安全专家如何使用这些命令来帮助他们更好地工作,从而完整地列出十大命令。 与使用tasklist的程序相结合 在前面的技巧中,我分析了WMIC命令是如何提供关于正在运行程序的有趣见解的。Tasklist命令也拥有一些不错的功能,值得一提。
它减少了一些程序的特性,这些特性对于弄清楚如何使用WMIC是很难或者是不可能的。 当没有其它选择,只运行tasklist命令时,它会显示一列所有正在运行的程序,显示……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
在2008年3月的技巧中,我谈了一些Windows系统中最有用的命令行工具:包括WMIC、net、openfiles、netstat和查找命令。这次,我将集中阐述五个比较有用的命令,并分析安全专家如何使用这些命令来帮助他们更好地工作,从而完整地列出十大命令。
与使用tasklist的程序相结合
在前面的技巧中,我分析了WMIC命令是如何提供关于正在运行程序的有趣见解的。Tasklist命令也拥有一些不错的功能,值得一提。它减少了一些程序的特性,这些特性对于弄清楚如何使用WMIC是很难或者是不可能的。
当没有其它选择,只运行tasklist命令时,它会显示一列所有正在运行的程序,显示这些程序的名称、PID码和其它统计信息。要获得更多的tasklist信息,可以考虑这样运行该命令:
C:> tasklist /svc
这个命令可以使tasklist显示每个进程中是哪个服务正在运行。许多Windows用户并不理解服务与进程之间的关系,最多知道一个模糊的概念,即它们是不同的,但却有联系。实际上,Windows系统中的每个服务必须在某个程序中运行,并且一些程序内部有多个服务。因此,程序与服务之间的关系是一对多的关系,tasklist命令可以揭示这一点。
Tasklist命令的另一种有用形式是:
C:> tasklist /m
“m”代表“模块(modules)”,或者代表tasklist指代DLL和代码库的方式,代码库是程序在运行过程中按照主机的命令而加载的。当用这种方法调用命令时,tasklist可以显示当前加载到所有运行程序中的每一个DLL。这就为用户在特定的时间内提供了大量的信息,这些信息是关于其计算机上正在发生的情况。虽然分析该输出信息是一项令人畏惧的任务,但它所包含的信息有助于恶意软件研究者确定运行在其电脑上程序的性质。Google搜索特定的程序和DLL,可能会带回反病毒厂商站点中的恶意软件描述,有了特定样本,就可以洞察到攻击者的动机。
高级注册表分析的reg命令
Reg命令可以使用户与其机器的注册表在命令行进行交互。没有采用麻烦的regedit GUI来操纵注册表,安全专家可以简单地弹出打开一个Windows命令界面,并运行reg命令,进而读取或更新注册表。然而,reg命令不允许注册表的交互式浏览;用户需要知道他们想要查看或改变的注册表索引的完整路径。但是,一旦知道了路径,reg命令是一种进行更改的简单方式。
如果要查看特定注册表索引的设置,使用reg命令的“查询”选项,具体如下所示:
C:> reg query hklmsoftwaremicrosoftwindowscurrentversionrun
这个索引控制Windows上不同的自动启动程序,当计算机启动以及随后用户登录到系统时,这些程序开始运行。许多恶意软件样本可以改变这个索引,来确保当系统重新启动时,恶意软件也开始运行。
将单个索引或者整个注册表输出到一个文件,用于分析或者将其安装在一个隔离的系统中,reg命令支持“reg输出”功能。除了读取和输出注册表设置以外,reg命令也可以进行更新。“reg add”命令将更新现有索引值,或者在不存在索引的情况下,创建一个索引。“reg import”命令可以导入多个注册表索引。
使用ipconfig进行DNS分析
大多数真正的Windows用户都熟悉ipconfig命令,它非常有用,可以显示Windows中的网络设置。但是,ipconfig有一个非常有用的功能,许多人并不知道该功能——考虑到今天僵尸网络的性能,该功能对于安全专家来说是相当有益的。Ipconfig命令可以显示本地Windows机器中的DNS缓冲器,如下所示:
C:> ipconfig /displaydns
该命令的输出可以显示各种缓冲域名、其相关的IP地址以及DNS记录的停留时间(以秒计)。如果用户重复运行这个命令,他们可以看到停留时间在减少,直到记录终止并且被放弃,或者得到更新。在研究快速通量僵尸网络时,查看DNS缓冲器和停留时间(TTL)值是非常重要的,可以利用带有小部分TTL的DNS记录,来迫使连续更新,并使研究者宁不清楚黑客主要的后端服务器的地址。无可否认,ipconfig并不拥有诸如本文中提到的其它命令(比如tasklist和reg)那么多的功能。但是,这条命令的一个用处就非常有用。
利用FOR /L循环重复运行
有时,管理员或者安全专家想要重复运行一条命令,可能在5秒的间隔内寻找其输出的变化。要实现这一目的,他们可以采用Windows 系统的FOR循环。Windows支持五种不同的FOR循环,它们可以遍历文件整数、文件名、目录名称、文件内容和字符串。这里的重点是这些循环的最简化,尤其是FOR /L,由于它可以用来使命令连续运行,进而实现无数次遍历。FOR /L循环的语法是:
C:> for /L %[var] in ([start],[step],[stop]) do [command]
[var]是我们的迭代变量,一个英文字母将会在循环中的每一步显示不同的迭代值。然后,用户指定变量的初始值,在循环中的每一步中,数值会增加,并且其最大值会终止循环。也应当指定循环中每一步运行的命令。具体说来,需要考虑下面的几点:
C:> for /L %i in (1,1,10) do @echo %i
这个循环会使用%i作为一个变量,初始值为1。循环中的每一次迭代,%i会增加1,直至升到10。然后,在循环中,用户可以使用echo命令,简单地在屏幕上打印出迭代变量的值。@告诉系统不要打印出命令本身,这使得输出稍微漂亮一些。用户仅仅告诉系统从1计数到10。
现在,我们来看看如何使用这条命令来实现tasklist命令的连续运行:
C:> for /L %i in (1,0,2) do @tasklist
输入这条命令,就意味着用户告诉计算机为变量赋值为1 ,启动循环,计数为0 ,自始至终升到2。这就会无限计数,直到用户单击CTRL-C来终止它。用户可以在每次迭代中简单地运行tasklist命令。
要在迭代之间延迟几秒,只需要添加“& ping --n 6 127.0.0.1 > nul”,在循环的每次迭代中简单地多次ping本地主机(127.0.0.1)。如下所示:
C:> for /L %i in (1,0,2) do @tasklist & ping --n 6 127.0.0.1 > nul
由于Windows命令行没有内置的睡眠功能,来等待某个特定的延迟,用户可以使用ping,进而产生一个延迟。上面的命令可以ping本地主机地址六次(-n 6),引入一个五秒的延迟(第一次ping立即发生,紧接着是每秒一次ping,持续五秒)。我们正将ping烦人的输出转储为nul,并使之消失。结果是一个命令可以让tasklist每五秒运行一次,这个技术可以用于重复运行本文中提到的每条命令,用户可以更仔细地检查输出。更复杂的语法甚至可以解析命令的输出,允许产生专门制作的脚本,进而用于详细的系统分析,但是这种语法超出了每月技巧的讨论范围。
通过命令行启动管理GUI
虽然Windows命令行有许多功能强大的工具,但是,不论你相信与否,有时候,GUI工具可以比命令行做的更好。然而,Microsoft已经在其GUI的某些地址中埋藏了不同的控件,记忆这些模糊的地址是一项令人混乱的任务。
幸运的是,用户不必挖掘GUI来寻找他们想要的东西;相反,他们可以依赖命令行快捷方式。比如,不用在开始菜单中寻找并运行本地用户管理GUI,用户可以采用就近的命令提示和类型:
C:> lusrmgr.msc
大量的其它GUI控件都可以采用这种方法从命令行中启动,这样就可以节省大量的时间。下面是我钟爱的一些控件:
- Secpol.msc:这是本地安全策略的管理者,用于在机器上配置大量的安全设置。
- Services.msc:这条命令可以启动服务的控制面板GUI。
- Control:这个命令可以调出工具的整个控制面板设置。
- Taskmgr.exe:该命令用于启动任务管理器。
- Explorer.exe:运行这条命令,可以采用便捷的方式调用Windows file explorer。
- Eventvwr.ms:该命令可以运行此命令运行Windows事件查看器(Windows Event Viewer),有助于日志分析。
结论:
首先,这些技巧中提到的各种Windows命令可能看起来比较模糊,或者难于记忆。但是,随着勤奋的练习,这些Windows命令行工具可以帮助管理员和安全专家更有力的掌控其Windows机器,当受到攻击时,可以更安全地进行配置,更详尽地进行分析。
作者
相关推荐
-
GhostHook是如何绕过微软PatchGuard的?
GhostHook攻击技术可绕过微软的PatchGuard,不过微软还没有修复这一漏洞。在本文中,专家Michael Cobb解释了这种攻击的工作机制。
-
为何Windows快捷方式文件容易受到攻击?
微软Windows中的一个漏洞可使攻击者在快捷方式文件中自动执行代码,这个攻击的工作原理是什么,如何防范?
-
Windows现漏洞 可绕过AppLocker白名单实施攻击
安全研究人员发现,通过使用Windows命令行使用程序(可追溯到Windows XP),基于Windows AppLocker的应用白名单保护可以被绕过。
-
微软发布紧急安全补丁 救IE于水深火热中
在微软星期二补丁日的一周后,微软再次发布紧急安全补丁,旨在修复IE浏览器中的严重漏洞,该漏洞影响所有版本Windows和Windows服务器。