聞く:
こんにちは、スクリプトの専門家! HTA内でスクリプトをエンコードする方法は?
-ll
答え:
こんにちは、ll。この質問を最初に見たとき、「大したことは何ですか?HTMLアプリケーション(HTA)でスクリプトをエンコードすることはできません。HTMLファイルのようにスクリプトをエンコードできませんか?」驚いたことに、HTAでスクリプトをエンコードできないようです。これを行こうとするたびに、次のようなエラーメッセージを返します。
scriptingencoderobject( "scripting.encoder")failedonc:/scripts/test.hta
正直なところ、HTAでスクリプトをエンコードする方法は見つかりませんでした。しかし、それは大丈夫です。なぜなら、私たちはこの問題を解決するためのトリッキーなアイデアを思いついたからです。しばらくお伝えします。
ただし、それを行う前に、スクリプトをエンコードすることの意味を説明するために時間をかける必要があります。 Microsoftには、スクリプトコードを「バンプ」するScriptencoder(Script Encoder)と呼ばれるユーティリティがあります。たとえば、次のようなスクリプトがあるとします。
strcomputer = "。"
setobjwmiservice = getobject( "winmgmts://"&strcomputer& "/root/cimv2")
SetColoperatingSystems = objwmiservice.execquery( "select*fromwin32_operatingsystem")
foreachobjoperatingsystemincoloperatingsystems
msgboxobjoperatingsystem.caption& ""&objoperatingsystem.version
次
何らかの理由で、人々がスクリプトコードを読むことができないようにしたいとします。これは問題です。結局のところ、スクリプトを実行する権利を持っている人は誰でも、メモ帳でそれを開き、何でも視聴するのと同じ権利を持っています。ただし、同じスクリプトが「スクリプトエンコーダー」によって処理された後、次のようになります。
#@〜^8aeaaaa ==@#@&@#@&、pp、?!8pv+oru.n.kkw@#@、pp、~~ pkymzg:2; d+.p {〜jcj@&、pp ~~、p〜p、〜u+o、w(l tq
und7k^+、 '〜! yr(%+1y`rarxsosyd)wwrp'pkod; wh2!y+。〜lp〜j'.kwo'mb:/yj*@#@&@#@&〜p、p ~~、pp、〜? yp1gsra+mlokuluxdy h/、 '〜g(
l /(u +./b^ r3x+1pe dh〜 {@#@&〜p、p ~~、pp、〜p、ppvej+^+1y〜e〜w
MWHPQRX2M6A+DCOBXL?HDD+HR#@#@&@&P、〜P、P〜P、P〜OKDPACM4PW(%6W DMYR
xljh/o+s〜kp^g^rwn.myrxtjh/o:k@#@&、p、p、p〜p、p ~~、phkl4k6pk8%ra+m
lokuluxdy hr; l2obwx〜 '、j〜j、'、{@#@&p、pp、〜p、p〜p、p ~~、pw(%ra+dmorxt?h/o+h
j+。/bgx@#@&~~、pp ~~、p〜pgnxy@#@&p、ppax9〜?!4@#@&qyqaaa ==^#〜@
スクリプトはまだ機能していますが、誰もがコードを見て、仕事の結果を盗用するのは少し難しいです。 (あなたは正しい:それはあなたよりも本当に良いです、スクリプトの専門家!それで言及されているジョークのほとんどはより理にかなっています)
さて、覚えておくべき重要なことは、暗号化なしでスクリプトをエンコード(または破壊する)ことです。それはどういう意味ですか?これは、エンコーダーがほとんどの人からスクリプトを隠すことを意味します。ただし、コーディングの知識を持っているか、ユーティリティをインターネットからダウンロードしている本物のハードコアハッカーは、このコードをクラックする可能性があります。これは、特にスクリプト内の管理者パスワードを「非表示」しないことを意味し、「スクリプトエンコーダー」がパスワードがスヌーピングされないようにすることもできません。暗号化業者ではなくエンコーダーだと思うようなものではありません。