SharpSniper应用剖析 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

SharpSniper应用剖析

申博_安全防护 申博 64次浏览 已收录 0个评论

0x00 媒介

SharpSniper用于在域环境中找到指定域用户的IP地点,须要具有读取域控制器日记的权限,地点:https://github.com/HunnicCyber/SharpSniper

本文将要对SharpSniper的完成道理举行剖析,扩大用法,离别引见怎样运用wevtutil.exe和powershell剧本完成雷同的功用,分享个中须要注重的细节。

0x01 简介

本文将要引见以下内容:

· SharpSniper完成道理

· 运用wevtutil完成

· 运用powershell完成

0x02 SharpSniper完成道理

经由过程查询域控制器上的用户登录日记(Event ID:4624),取得域用户运用过的IP地点。

详细完成以下:

1.经由过程查询日记取得域用户运用过的IP

XPath查询前提(以查询用户testb为例):

"Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"

对应代码地点: https://github.com/HunnicCyber/SharpSniper/blob/master/QueryDC.cs#L16

2.经由过程正则表达式过滤出域用户运用过的IP

正则表达式:

"\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b"

· \b示意单词的前或后边境

· \d{1,3}示意字符个数在1到3位之间

· .示意婚配字符”.”

对应代码地点:

https://github.com/HunnicCyber/SharpSniper/blob/master/Program.cs#L54

0x03 运用wevtutil完成

1.查询指定用户(以查询用户testb为例)的登录日记

cmd敕令以下:

wevtutil qe security /format:text /q:"Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"

包含每条日记的详细信息,以下图:

2.从详细信息中提掏出ip

这里能够借助find敕令举行挑选。

cmd敕令以下:

wevtutil qe security /format:text /q:"Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"|find "Source Network Address"

挑选后的效果以下图:

SharpSniper应用剖析

从日记中提掏出用户testb运用过的一切IP地点。

补充:XPath查询前提的编写

能够运用Event Viewer自动天生须要的XPath语句。

1.翻开Event Viewer

cmd实行:eventvwr.msc

2.挑选Create Custom View..

以下图:

SharpSniper应用剖析

3.设置查询前提后挑选XML标签

DNS放大攻击暴增,高级防护迫在眉睫

来自网络安全公司Nexusguard的研究人员表示,在过去三个月里,他们发现DNS放大攻击(DNS Amplification Attack)增加了1000%。 Nexusguard分析师Tony Miu,Ricky Yeung和Dominic Li,在他们的“2019年第二季度威胁报告”中表示,将攻击的大幅增长归因于域名系统安

以下图:

SharpSniper应用剖析

自动天生须要的XPath语句,以下图:

4.运用wevtutil挪用查询语句的两种要领

(1)根据/q参数的花样举行修正

须要提取自动天生的XPath语句中Select标签中的内容。

(2)经由过程读取文件挪用查询

直接运用自动天生的XPath语句。

将步骤3中的查询语句保存到文件,比方custom1.xml。

读取文件挪用查询的敕令以下:

wevtutil qe custom1.xml /sq:true /rd:true /f:text

0x04 运用powershell完成

1.查询指定用户(以查询用户testb为例)的登录日记

Get-WinEvent -LogName "security" -FilterXPath "Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"|Format-List

包含每条日记的详细信息,以下图:

SharpSniper应用剖析

2.从详细信息中提掏出ip的三种要领

(1)运用find敕令

Get-WinEvent -LogName "security" -FilterXPath "Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"|Format-List|find "Source Network Address"

效果以下图:

SharpSniper应用剖析

(2)经由过程正则表达式举行过滤

第一种完成要领:

运用SharpSniper中的正则表达式,对应的powershell敕令以下:

$events = Get-WinEvent -LogName "security" -FilterXPath "Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"
$i=0
while ($i -lt $events.length) {
    $IP=[regex]::matches($events[$i].Message, '\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b')
    Write-Host $IP
    $i++
}

效果以下图:

第二种完成要领:

搜刮症结词”Source Network Address:”,对应的powershell敕令以下:

$events = Get-WinEvent -LogName "security" -FilterXPath "Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"
$i=0
while ($i -lt $events.length) {
    $IP=[regex]::matches($events[$i].Message, 'Source Network Address:(.+)') | %{$_.Groups[1].Value.Trim()}
    Write-Host $IP
    $i++
}

效果以下图:

(3)先转换成xml花样,再举行挑选

在输出时,只要Message列,没法挑选只输出”Source Network Address”的内容。

这里假如将输出内容转换为xml花样,”Source Network Address”对应的列为ipaddress。

参考资料:

https://blog.51cto.com/beanxyz/1695288

对应的powershell敕令以下:

$Events = Get-WinEvent -LogName "security" -FilterXPath "Event[System[(EventID=4624)] and EventData[Data[@Name='TargetUserName']='testb']]"     
ForEach ($Event in $Events) {       
  $eventXML = [xml]$Event.ToXml()         
  For ($i=0; $i -lt $eventXML.Event.EventData.Data.Count; $i++) {   
    Add-Member -InputObject $Event -MemberType NoteProperty -Force -Name $eventXML.Event.EventData.Data[$i].name -Value $eventXML.Event.EventData.Data[$i].'#text'     
  }       
}       
$events|select ipaddress

效果以下图:

补充:运用powershell挪用自动天生的XPath查询前提

参照0x03中的内容,运用Event Viewer自动天生须要的XPath语句。

直接保存在变量$xml中并举行挪用,对应的powershell敕令以下:

$xml = @'

<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">*[System[(EventID=4624) and TimeCreated[timediff(@SystemTime) &lt;= 604800000]]]</Select>
  </Query>
</QueryList>

'@

Get-WinEvent -FilterXml $xml

0x05 小结

本文剖析了SharpSniper的完成道理,扩大用法,离别引见怎样运用wevtutil.exe和powershell剧本完成雷同的功用,能够用来猎取域环境中症结用户运用过的IP。

原文地点: https://www.4hou.com/technology/20385.html


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明SharpSniper应用剖析
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址