1
0
mirror of https://github.com/nganhkhoa/malware.git synced 2024-06-10 21:32:07 +07:00
This commit is contained in:
mether049 2020-01-10 09:44:05 +09:00 committed by GitHub
parent b15e979e5c
commit 26e7d9ce7c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -97,9 +97,11 @@ to do...
[Invoke-Obfuscation](https://github.com/danielbohannon/Invoke-Obfuscation)
- Powershell Script内で用いられる難読化技術について
### case-insesitive
- コマンドレットや変数を大文字,小文字を混ぜる
- コマンドレッ名や変数名に大文字,小文字を混ぜる
- PowerShellでは区別されない
> INvOke-eXpReSsiOn
```
INvOke-eXpReSsiOn
```
### alias
- コマンドのエイリアスを用いる
- エイリアスの確認方法
@ -109,19 +111,19 @@ get-alias iex #iexのエイリアス(Invoke-Expression)の確認
```
- よく利用されるエイリアス
```
iex -> Invoke-Expression<br>
iex -> Invoke-Expression
sal -> Set-Alias
```
- エイリアスの設定
```
set-alias <Name> <Value><br>
set-alias <Name> <Value>
sal ping iex
```
### dot expression and amp expression(Invoke-Expression)
- 文字列で表現されたコマンドレットを実行
```
.("get-alias")<br>
&('gal')<br>
.("get-alias")
&('gal')
iex("GeT-AliAs")
```
### Combining characters
@ -132,12 +134,12 @@ iex("GeT-AliAs")
### Backticks
- コマンドレットや変数にバッククォートを挿入
```
\`i\`e\`x("\`gal \`gal")
`i`e`x("`gal `gal")
```
### Split method
- 文字列の分割
```
'bob@alice'.split('@') -> bob alice<br>
'bob@alice'-split('@') -> bob alice
'bob@alice' -split '@' -split "i" -> bob al ce
```
### Join method
@ -148,7 +150,7 @@ iex("GeT-AliAs")
### Concatenation operations
- 文字列の並べ替えおよび連結
```
"{1} {0}" -f "Alice","Bob" -> Bob Alice<br>
"{1} {0}" -f "Alice","Bob" -> Bob Alice
"{1} {0}" -f "Alice",("{1}{2}{0}" -f "b","B","o") -> Bob Alice
```
### No Space
@ -164,14 +166,14 @@ iex("GeT-AliAs")
### $ENV variable
- 環境変数の値を文字列の作成等に利用
```
.(\$seLLId[1]+\$shEllId[13]+'x') -> .(iex)<br>
.($seLLId[1]+$shEllId[13]+'x') -> .(iex)
&($EnV:cOmSpEc[4,15,25]-JOIN'') -> &(iex)
```
### Encode
- xor
- 文字16進数10進数等で指定可能
```
10-bxor"10" -> 0<br>
10-bxor"10" -> 0
"0xa"-bxor10 -> 0
```
- base64
@ -184,12 +186,12 @@ New-Object System.IO.Compression.DeflateStream([iO.mEmoRySTream] [sysTEM.ConVert
```
- unicode
```
\[System.Text.Encoding]::Unicode.GetString($unicodeBytes)
[System.Text.Encoding]::Unicode.GetString($unicodeBytes)
```
### Ascii code
- 文字などをasciiコードの10進数16進数表記で示す
```
[string]\[char[]](0x69,0x65,0x58) -> i e X
[string][char[]](0x69,0x65,0x58) -> i e X
```
### Replace method
- 文字や文字列を置換する