一说起 Shell 编程,我们大家想到的应该都是Linux 下的 Shell 编程。其实 Windows 下也可以使用功能强大的 Shell 来编写程序,这就是今天我要介绍的 Powershell。...获取别名 有些命令比较常用,除了动词-名词版本外,Powershell还提供了和Linux 一样的别名来简化输入。...PS C:\Users\asddf> Get-Command -Verb Get 相应的,如果我想获取所有名词是Help的命令,可以使用下面的命令。...、如果一个命令添加了帮助参数,那么Powershell 不会实际执行这个命令,而是显示它的帮助信息。 服务管理 原来,如果我们使用批处理来管理Windows服务的话,一般情况下用的是sc这个命令。...首先我们先查看一下有什么管理服务的命令,只需要查询一下名词是service的命令即可。可以看到这些命令涵盖了从创建服务到管理服务的各个方面,功能很丰富。
组件对象不使用方法而用接口来描述自身。接口被定义为“在对象上实现的一组语义上相关的功能”,其实质是一组函数指针表,每个指针必须初始化指向某个具体的函数体,一个组件对象实现的接口数量没有限制。...对攻击者而言,这无疑能够增强隐蔽性,由于有大量程序都会向DCOM公开方法,因此防御者可能难以全面监测所有程序的执行 通过本地DCOM执行命令 1、获取DCOM列表 有两个命令,其中一个命令是只支持psh3.0...其实网上很多都是获取DCOM列表,然后就用一些MMC20等执行,细细一想,其实查询DCOM这步其实没有什么用,我猜测,查询DCOM列表的目的是找到合适的DCOM组件,然后查询它是否有命令执行或者一些其他什么功能...,但是我无法通过DCOM查询到CLSID或者是ProgID,所以没法判断DCOM能够执行什么功能 2、使用DCOM执行任意命令 首先要一个管理员权限的shell ?...")) 此命令是获取一个COM对象的实例,如果获取成功,可以使用命令查看用法 $com.Document.ActiveView | Get-Member 可以看到一条命令执行的 ?
快速安装 IIS 是易于安装与服务器管理器图形化应用程序。 选择 Web 服务器角色,并不添加任何附加功能尚未 (我将探讨以后那些)。 在生产环境中,你不应该添加任何更多比你出于安全原因需要什么。...图 2 使用 Internet 信息服务 (IIS) 管理器来管理服务器或 Web 站点。 2....您将使用此为管理任务和用于获取有关您的 Web 站点,信息,所以您应该导入的 WebAdministration 模块和查阅新的驱动器: PS C:\> Get-ChildItem...您创建的目录的文件系统上,将您的文件 (Web 页) 添加到目录中,并创建一个网站来分享这些页面到世界。 一个 Web 站点从叫做"绑定"被配置为该 Web 站点中获取其"共享名称"。...有两种方法来查看有关默认的 Web 站点的信息 — 或任何其他 Web 站点,为那件事 — 使用 Windows PowerShell。
命名空间 让我们简单回顾一下命名空间是什么: 命名空间结构信息类似于文件系统中文件夹,但是,与物理位置 (例如磁盘上) 不同,它们本质上更具有逻辑 WMI 中的所有命名空间都是 __Namespace...系统类的实例,要获取 root 命名空间下所有命名空间的列表,可使用以下命令查询同一个类: Get-WmiObject -Namespace root -Class __Namespace 输出的内容包含了许多信息...可以使用以下命令来缩小范围,该命令列出了用于获取或操作用户信息的所有可用类: Get-WmiObject -Class *user* -List 同样也可以使用 Get-CimClass 命令也能实现同样的效果...能获取相同的信息: Get-CimInstance -ClassName Win32_UserAccount 现在我们有了系统上所有用户帐户的列表!...但是,重要的是要记住实例应该是可写的。通过编写一些脚本,我们可以编写一个获取类的所有可写属性的方法。
当渗透测试人员成功控制一台机器后,其内网结构如何、这台机器是什么角色的、使用机器的人是什么角色的、机器上安装的是什么杀毒软件、机器是通过什么方式上网的、机器是笔记本还是台式机等,都需要通过信息收集来获取...执行如下命令也可以查看进程信息: wmic process list brief ? 一般来说,域内的较件和杀毒软件应该是一致的,常见的杀毒软件进程,如下表所示: ?...然后,通过反向解析查询命令nslookup来解析域名的IP地址。使用解析出来的IP地址进行对比,判断域控制器和DNS服务器是否在同一台服务器上,如下图所示: ?...###查看系统详细信息 执行如下命令,来查看系统信息,如结果所示,域即域名,登录服务器为域控制器。...在扫描的时候,应尽量避免使用Namp等工具进行暴力扫描,也不要在目标机器上使用图形化的工具,而要尽量使用目标系统自带的各种工具,推荐使用PowerShell脚本。
Get-Item命令用于获取给定文件的信息。 还有文件移动、删除、复制、粘贴、重命名等命令,输入Get-Command -Noun item就可以看到这些命令,这里就不做介绍了。...获取文件信息 获取文件信息可以利用命令Get-Item。下面获取了我电脑上的cmder.exe可执行文件的信息。 λ Get-Item ....代码很简单,基本上一下子就能看懂。一开始我没有加Sleep,然后CPU使用率飚的非常高,加了之后基本上对电脑性能没有影响了。...但是我使用这个方法却不知道为什么显示不了。所以这里只能将就一下了。 ? 最后再来画个饼状图,数据还是上面的数据,不过这次只使用语文那一列的数据。基本上和上面的一样,只有类型那里改成xlPie。...Install-Module ImportExcel 这个模块如何使用我就不作介绍了,这个项目的README文件上基本列出了所有功能和对应的GIF图,需要什么功能只要看一看应该就可以使用了。
3.2 cmd命令的使用 3.3 powershell 别名兼容性 3.4 别名的创建 四丶PowerShell信息 4.1 获取命令的帮助信息 4.2 获取指定命令信息的语法 五丶PowerShell...[服务名] 停止服务 2.powershell使用标准参数 1.标准参数的使用 Powershell使用标准参数,前边必须带有- 例如: Get -command -name Clear-host...别名命令使用 3.1 别名 powershell支持别名,可以通过别名来引用此命令。...powershell跟CMD不是一个东西,但是你学习过cmd再去学习powershell 基本上的命令你都可以使用 例如cls 在cmd中可以清屏 powershell中可以做Clear-host函数的别名...中可以创建变量来保存一些值 声明变量语法 $[变量标识符] 例: $Value 变量可以保存powershell命令信息。
这里我用msf来探测下FTP是否允许 匿名登陆,使用msf的/auxiliary/scanner/ftp/anonymous模块。 ? ...经过了挺久的时间,没爆破出什么有用的信息。我们去看下刚刚从FTP下载来的文件,先解压Engineer目录下的Access Control.Zip文件。 ? 发生了一个错误,还7z来进行解压。...powershell正常的,那我们本地搭建一个简易的HTTP服务器放上我们的powershell反弹shell脚本,让靶机进行远程下载执行反弹一个shell。...然后在目标靶机telnet上执行这段代码,就是远程执行powershell脚本。...这里我换了一种格式写,发现我的python HTTP服务器出现了响应,但是9002并没有返回shell。
但从我来看,在 Observable或 Indicator 层面到 ATT&CK 的 Technique 层面存在一些层次上的缺失,也就是我认为中间包含一个富有更多上下文信息的复合结构,并且其能够容易映射到检测点以及实现规则的过滤...另一方面,作为防御方或威胁分析人员还应该多考虑被攻击目标所处的环境,例如针对境内目标的攻击活动大概率不应该出现利用 google 相关网站实现存活探测,或是使用 Dropbox、 Twitter 这种平台实现一些命令控制或者数据渗出...为了达到同一个战术目标,攻击者可能会采用多样性的方式来实现,例如不同的系统 API,利用系统本地的代码执行和模块装载命令和程序来实现。...对于 APT 分析来说,我认为可以分为四个分析维度: 技术分析,即对攻击的样本,使用的漏洞利用工具等进行分析,一方面分析其具体使用了哪些技术手段,用来做什么,另一方面是提取指纹特征; 战术分析,需要去对应当前的攻击阶段...Shortcut Modification 这里我列举了三种形态的 LNK 文件修改方式,都是在 APT 场景下使用过,既可以在目标命令中插入脚本执行或加载一个特定 DLL,或是利用 LNK 格式本身的特性来隐藏执行的命令
下面是每个现代开发人员应该知道并会使用的十大工具列表: Git和GitHub:尽管有些公司仍然在使用SVN或CVS,甚至可怕的Clearcase,但并不建议你用这其中任何一个工具。...Git现在是一个基本的技能,就像穿鞋或拼写检查一样。 SSH:是的,我知道,你是一个Windows开发人员,你不需要使用那个讨厌的shell。但是,你需要使用它来创建SSH密钥或使用其他SSH功能。...所以,对于要编写一个重启脚本,从一个退出命令中获取错误码,或者在一个循环中做一些事情,Bash(在Linux,许多Unixes,MacOS和Windows 10中)和Microsoft的PowerShell...在Mac和Linux上,curl是一个命令行工具,可以让你针对REST API进行测试,甚至编写脚本。...另外还有像Postman这样的GUI工具可以完成同样的工作,但一个认真负责的开发人员需要能够通过使用点选式的界面来提高效率。 Markdown:这是GitHub中README.md文件的格式。
本文中,我 们将主要说明如何通过 Powershell 收集系统信息和生成报告。...使用 WMI 类:因为有了使用 Get-Process 命令的经验,所以我们可以在不同的 Module 中找到不同的命令,例 如: 获取当前计算机中所有的服务信息 Get-Services 获取 Hyper-V...什么是 WMI 类? 为什么要使用 WMI 类 一个计算机的系统,它基本上包括了两个部分,软件和硬件,细分下来的话,硬件包括了 CPU,内存, 磁盘,网卡,显卡等,而软件包括了操作系统,应用程序。...其实我们可以通过Powershell的方法来获取具体命令空间下的所有类,使用到命令为 Get-CimClass,它是由 CimCmdlets Module 提供的。...有了 WMI 类的信息后,我们就可以使用 Powershell 提供的 Get-CimInstance 命令来调用类获取当前系统 中的不同组件信息了。
运行 AD PowerShell cmdlet Get-ADServiceAccount,我们可以检索有关 GMSA 的信息,包括特定的 GMSA 属性。...为了获得正确的 NT 密码散列,我们需要使用Mimikatz命令“Sekurlsa::ekeys”,该命令用于获取 Kerberos 票证。...运行这个 Mimikatz 命令后,我们可以看到密码哈希。使用此密码哈希,我们可以通过哈希 (PTH) 来破坏 AD。 但是,如果我们无法访问服务器本身怎么办?...我们可以利用 PowerShell cmdlet Get-ADServiceAccount 来获取 GMSA 的明文密码数据(属性 msds-ManagedPassword)。...我使用DSInternals命令 Get-ADReplAccount 来获取 AD 密码哈希,并且可以确认从 GMSA 提取的密码哈希与从 AD 收集的密码哈希相同。
在 Google I/O ’17 上,Google 向我们介绍了 Flutter —— 一款新的用于创建移动应用的开源库。 Flutter是什么呢?...重启PowerShell后生效 安装好之后,运行一下看看版本号,我这边的powershell版本号相关信息如下: PSVersion 5.1.15063.1029...【重点提示】按照提示来操作即可,哪个缺少(前面是 X 符号的)就配置哪一个。。一般来说,命令行会给你一些提示,比如需要使用什么命令操作,需要在哪个路径下面操作等。。...↓其他问题:基本都是开发工具的配置了,这个就不多说了,大家应该很熟悉了。 ---- (三) 使用cmd执行flutter doctor报错:无法与服务器建立连接。...最后我看flutter官方安装文档推荐使用PowerShell,于是我打开PowerShell命令行(必须安装5.0+版本),输入flutter doctor,终于好了。
重启PowerShell后生效 安装好之后,运行一下看看版本号,我这边的powershell版本号相关信息如下: PSVersion 5.1.15063.1029...然后重新打开命令行,执行flutter doctor -v命令,。看看还有什么需要安装的?...【重点提示】按照提示来操作即可,哪个缺少(前面是 X 符号的)就配置哪一个。。一般来说,命令行会给你一些提示,比如需要使用什么命令操作,需要在哪个路径下面操作等。。...↓其他问题:基本都是开发工具的配置了,这个就不多说了,大家应该很熟悉了。 ---- (三) 使用cmd执行flutter doctor报错:无法与服务器建立连接。...最后我看flutter官方安装文档推荐使用PowerShell,于是我打开PowerShell命令行(必须安装5.0+版本),输入flutter doctor,终于好了。
在 Windows 上设置和使用 kubectl 的综合指南,包括处理代理、管理多个集群和升级 kubectl。...文档传统上专注于 Linux,此帖子提供了在 Windows 10 上使用 kubectl 的最佳实践,包括: 为 PowerShell 设置 kubectl 在公司代理后面使用 kubectl 向 kubectl...URL "http://proxy.corp.com:80" HTTPS_PROXY 用于 HTTPS 流量的代理服务器 URL "http://proxy.corp.com:443" 我不应在何时设置...以使更改生效 向 kubectl 添加集群 从您的管理员那里获取集群 API 服务器 URL 和身份验证详细信息 创建集群上下文: kubectl config set-cluster mycluster...关键是利用上下文来组织对集群和命名空间的访问。将其与 PowerShell 环境变量结合使用以进行动态配置。
由于PowerShell在Linux和MacOS等操作系统上的支持在MacOS上安装(pwsh),处于安全性考虑日志记录作为必不可少的一部分,PowerShell使用本机os_log API登录Apple...在Linux上,PowerShell使用Syslog,微软将此上升成为一种几乎全平台支持的日志记录解决方案。...作为PowerShell 7的一部分,Microsoft在之前的日志记录基础上,增加了一种安全使用本地或远程存储中的凭据的方法,以便不需要将密码嵌入到脚本中。...模拟执行Get-process获取系统进程信息,然后观察Powershell日志能否记录此次测试行为。...Powershell事件800 命令行的管道执行详细信息: Get-process。
APT-Hunter是用于Windows事件日志的威胁搜寻工具,该工具能够检测隐藏在Windows事件日志中的APT运动,如果您是弄威胁情报的人,那么我保证您会喜欢使用此工具的,为什么?...我将在本文中讨论原因,请注意,此工具仍为测试版,并且可能包含错误。 为什么要开发此工具?...使用Regex进行日志解析和提取。 该工具是基于Internet上发表的研究成果以及我本人进行的测试而构建的,目的是在一个工具中收集大多数有用的用例。...2.终端服务的统计信息,以使用户可以交互访问或使用RDP访问服务器GUI终端。 ? 3.成功/失败身份验证的统计信息,以便获得身份验证摘要,以帮助您检测异常或不应该登录设备的用户。 ?...命令 使用Powershell日志使用多个事件ID检测可疑的Powershell命令 使用终端服务日志从袜子代理检测连接的RDP 使用终端服务日志从公共IP检测连接的RDP 从计算机Powershell
博主会持续不断地来更新,希望大家可以支持我。 #### 1.Redis是什么?...#### 29.为什么AOF要先把命令追加到缓存区(aof_buf)中? Redis使用单线程响应命令,如果每次写入文件命令都直接追加到硬盘,性能就会取决于硬盘的负载。...Jedis:更轻量、简介、不支持读写分离需要我们来实现,文档比较少。API提供了比较全面的Redis命令的支持。 Redisson:基于Netty实现,性能高,支持异步请求。...定期删除:每隔一段时间执行一次删除过期键操作,并通过先吃删除操作执行的时长和频率来减少删除操作对cpu时间的影响。 #### 39.Pipeline是什么?为什么要它?...- 客户端和服务的网络延越大,pipeline效果越明显。 #### 40.如何获取当前最大内存?如何动态设置?
目前最新版本可以到的是2.3包含282个模块,和之前的,2.x之后有些使用方法以及命令都有了很大的区别,官网也没有给出更新介绍使用。 ? 输入help查看Empire使用帮助信息 ?...这里要注意一点,当开启多个监听的时候,必须使用不同的名称,并且使用不同的端口,如果设置的端口已经被使用,会有已下提示信息。set空格按两下Tab就会出现相关命令 如下图。 ? ?...由于之已经设置过了这里只需填写之前监听的名字,execute 执行完了之后会在Empire搭建的服务器上的/tmp/生成个vbs的木马 ? ?...之前已经设置过了Name和Host这里只需要监听下名称就好,最后在执行下execute,默认在服务器上的/tmp/下生成加密过的PowerShelll木马,为launcher_bat ? ?...,直接输入ps选择一个进程的PID,使用进程注入模块,来获取权限。
Analytic日志记录了更多的信息,可以帮助我们定位一些错误是在什么地方发生的,但Analytic日志如果启用(默认情况下禁用)在生产环境中将产生大量记录数据可能会妨碍实际分析。...从攻防发展的历史来看,此版本出现后攻击者也考虑了其他方式来躲避日志记录,比如使用大量的混淆算法来进行模糊处理。...set-SBLLogSize -MaxSizeMB 1000 Enalbe-SBL 或者通过GPO启用PowerShell脚本块日志记录功能并记录脚本文件的调用信息: image.png 当然也可以通过修改以下注册表选项来开启...等操作系统上的支持在MacOS上安装(pwsh),处于安全性考虑日志记录作为必不可少的一部分,PowerShell使用本机os_log API登录Apple的统一日志记录系统。...在Linux上,PowerShell使用Syslog,微软将此上升成为一种几乎全平台支持的日志记录解决方案。
领取专属 10元无门槛券
手把手带您无忧上云