diff --git a/malware-tech_ref_and_memo.md b/malware-tech_ref_and_memo.md
index 6b2067c..c9344df 100644
--- a/malware-tech_ref_and_memo.md
+++ b/malware-tech_ref_and_memo.md
@@ -93,6 +93,9 @@ to do...
[A Museum of API Obfuscation on Win32](http://eval.symantec.com/mktginfo/enterprise/media/security_response/whitepapers/a_museum_of_api_obfuscation_on_win32.pdf)
## PowerShell Script obfuscation
+- 難読化ツール
+[Invoke-Obfuscation](https://github.com/danielbohannon/Invoke-Obfuscation)
+- Powershell Script内で用いられる難読化技術について
### case-insesitive
- コマンドレットや変数を大文字,小文字を混ぜる
- PowerShellでは区別されない
@@ -106,7 +109,8 @@ to do...
> iex -> Invoke-Expression
> sal -> Set-Alias
- エイリアスの設定
-> set-alias
+> set-alias
+> sal ping iex
### dot expression and amp expression(Invoke-Expression)
- 文字列で表現されたコマンドレットを実行
> .("get-alias")
@@ -135,6 +139,35 @@ to do...
### Pipe operator
- パイプによる引数の引き渡し
> 'Write-host 1' | iex
+### $ENV variable
+- 環境変数の値を文字列の作成等に利用
+> .(\$seLLId[1]+\$shEllId[13]+'x') -> .(iex)
+> &($EnV:cOmSpEc[4,15,25]-JOIN'') -> &(iex)
+### Encode
+- xor
+ - 文字,16進数,10進数等で指定可能
+> 10-bxor"10" -> 0
+> "0xa"-bxor10 -> 0
+- base64
+> [System.Convert]::FromBase64String("Ym9iYWxpY2UK") -> bobalice
+- zlib
+> New-Object System.IO.Compression.DeflateStream([iO.mEmoRySTream] [sysTEM.ConVert]::frOMBASE64STrING("Ym9iYWxpY2UK"))
+- unicode
+> [System.Text.Encoding]::Unicode.GetString()
+### Ascii code
+- 文字などをasciiコードの10進数,16進数表記で示す
+> [string][char[]](0x69,0x65,0x58) -> i e X
+### Replace method
+- 文字や文字列を置換する
+> 'i e x'-replace ' ','' -> ieX
+### %(foreach-object)
+- foreach-objectの省略系で%を利用
+> ((0x69, 0x65, 0x58) | %{([char] [int] $_)})-jOIN'' -> ieX
+### Comment out
+- コメントアウト
+> <#bobalice#>
+
+
### ref: