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週間このライブラリーで正常に動きましたので、記事にすることにしました。
オススメ記事
IS-MF03-32 エラー Epic Games Lancher アップデート…
問題点 Epic Games Lancherを使って、ゲーム…
PowerShellでこのシステムではスクリプトの実行が無効になっているため、フ…
はじめに マイクロソフトより、2023年10月にVBScri…
フォトナイト エラー 対処方法「A D3D11-compatible GPU (…
問題点 Unreal Enginを使用している、フォートナイ…
ディスカッション
コメント一覧
まだ、コメントがありません