bitsadmin.exeがEMOTETを疑われて使えないときの対策方法
問題点
コマンドプロンプトでインターネット上のファイルを取得しようとするとウイルス対策ソフトやセキュリティー対策ソフトにEMOTETが疑われて実行ができなくなってしまった。コマンドプロンプトのbitsadmin.exeがインターネット上のファイルを取得するコマンドです。
改善方法
インターネット上のファイル取得って結構面倒なことが多いんですよね。元々、バッチ処理に組み込んで、txtたlogぐらいのものをローカル処理用に引っ張ってきていたので、できるだけ簡単にしたかったので、適当にライブラリー化して、同じようなコマンドで済むようにします。
改善コード(ライブラリー部)
Windowsで動かすのに困らない、JScriptを採用。下記はそのコード。
// httpget.js
// Internet file get liblary
if ( WScript.Arguments.length == 0 ) {
WScript.Echo( "httpget url [savepath]" );
WScript.Quit();
}
var http = new ActiveXObject("Msxml2.ServerXMLHTTP")
var file;
var url = WScript.Arguments(0);
if ( WScript.Arguments.length == 1 ) {
var aData = url.split("/");
file = aData[aData.length-1];
}
else {
file = Wscript.Arguments(1);
}
WScript.Echo( url );
http.open("GET", url, false );
http.send();
try {
} catch (error) {
WScript.Echo( error.description );
WScript.Quit();
}
if ( http.status == 404 ) {
WScript.Echo( "URL が正しくありません(404)" );
WScript.Quit();
}
var stream = new ActiveXObject("ADODB.Stream");
stream.Open();
stream.Type = 1
stream.Write( http.responseBody );
stream.SaveToFile( file, 2 );
stream.Close
改善コード(実行部)
コマンドプロンプトなどで、下記で使用できるようになります。基本的には、bitsadmin.exeと同じような仕様になっています。
cscript httpget.js "URL"
「httpget.js」は、必要に応じて絶対パスで入れてください。(c:\Documents\httpget.jsみたいなやつね)
「URL」は接続先のURLです。
一応、接続先URLのファイルがない場合の、404エラーは出るようにしています。
バイナリー処理をしているので、基本的には、ファイル種類に制限はないはずです。
その他
EMOTETの脅威が勢力を広げ、勢いも増しているせいで、ある日突然、24時間自動稼働プログラムが、導入しているセキュリティーソフトに邪魔されるって事件が起きてあせりましたよ。2~3週間このライブラリーで正常に動きましたので、記事にすることにしました。
オススメ記事
フルカラー画像とは フルカラーの画像とは、約1677万色(1…
Xaudio2_9.dllから見つかりませんでした。の対策方法…
問題点 Windows7やWindows8.1対応ソフトやS…
【対処法】Windows10 標準アプリ「アラーム&クロック」が動かない バック…
Windows10の標準アプリの「アラーム&クロック」は使い…
ディスカッション
コメント一覧
まだ、コメントがありません