shutdownコマンドで攻撃、防御コマンドをプログラムする方法

プログラミング
スポンサーリンク

今回は、0.1秒間に遠隔でシャットダウンを送るコマンドとそれを防ぐ防御プログラムの作り方を説明します。

シャットダウンコマンドや遠隔操作でPCをシャットダウンさせる方法はこちらの前回の記事を参照にしてください。

攻撃プログラムの作り方

最終的にはこのようなコードを用いてコードを書いていきます。
解説を見なくていい人は以下のコードをコピペしてもいいと思います。

@echo off
 
for /l %%a in (0, 1, 99999) do (
  shutdown /m \\相手のPC名 /s /f /t 0.1 

  timeout /t 0.1

)

まずはデスクトップ上で右クリックして新規作成→テキストドキュメントを開きます。

名前は何でもいいです。わかりやすいようにしましょう。

メモ帳が開いたら一行目に以下のコードを入力してください。

@echo off

これはbatファイルお約束のようなコードです。

役割としてはこいつがないといちいちCMDを開いて実行するようになってしまいます。

次にFor文、つまり繰り返し文を書いて繰り返しコマンドを実行するプログラムを書いていきます。
For文の構文は以下のようになっています。

for /l %%変数名 in (最初の値, 繰り返すたび増える値, 繰り返しを終える値) do (
  ’繰り返したいプログラム
)

ここでは試しにプログラムを99999回繰り返すプログラムを書きます。
自分で何回繰り返すかは決めて書き換えてください。

for /l %%i in (0, 1, 99999) do (
  ’繰り返したいプログラム
)

変数名は小文字なら何でもいいです。ここではiにしました。
これで変数iに0を代入してプログラムが実行されると1づつ増えていき、99999になるまで繰り返すことができます。

それでは次に肝心な実行するプログラムを書きます。
今回は以下のようなコードをFor文の中に書きます。

for /l %%a in (0, 1, 99999) do (

 ’肝心な実行するプログラム↓
  shutdown /m \\PC名 /s /f /t 0.1 

  timeout /t 0.1

)

上記の【\\PC名】の「\」は「¥」と表示されるかもです。コードの表示上そうなっているだけなのでどっちでも問題ないです。

shutdown /m \\PC名 /s /f /t 0.1 

/m \\PC名 でPC名に対してリモート作業時のコンピュータ名を指定することができます。

/sでシャットダウンのコマンドを送信します。
再起動なら/rです。

/fは相手の開いてるアプリケーションを強制終了させることができます。

/t 0.1 でシャットダウンするまでの時間を指定できます。
この場合0.1秒後にシャットダウンさせることがわかると思います。

timeout /t 0.1


timeout /t 0.1 で0.1秒待つことができます。

これがないと0.1秒も待たないでコードを高速で繰り返すのでエラーなどのもとになります。

以上で攻撃プログラムの完成となります。

コマンドをbat形式で保存する

このままだとただのメモなので実行するように拡張子をbatファイルに変更します。

「ファイル」→「名前を付けて保存」をおします。

ファイル名の最期が「.txt」になっているので「.bat」に書き換えましょう。

ついでにファイルの種類も「すべてのファイル」に変更して保存します。

これでbatファイルの完成です。

batファイルにすることでアイコンをダブルタップして開いた時点でコードが実行されます。

batファイルを再び変更するには

つくったbatファイルを右クリックします。

すると編集というのがあるので押すと自動的にメモ帳上で編集ができます。

スポンサーリンク

防御システムの作り方

このままだと一方的にやられてしまします。

最終的にはこのようなコードを用いてコードを書いていきます。
解説を見なくていい人は以下のコードをコピペしてもいいと思います。

以下の解説は攻撃プログラムを見たことを前提に一部省略します。

@echo off
 
for /l %%i in (0, 1, 99999) do (
  shutdown -a

  timeout /t 0.1
)

先ほどと同じようにメモ帳を新規作成しましょう。

ほとんど先ほどの攻撃プログラムと一緒なので解説を省略します。

 shutdown -a

shutdown -aは前の記事でも出たようにシャットダウンを無効化するプログラムです。

つまり0.1秒ごとにャットダウンを無効化するプログラムというのがこのプログラムです。

先ほどと同様、butファイルで保存して使いましょう。

さいごに

いかがだったでしょうか。単にCMD上でつかってたコマンドにif文やfor文を組み込むことでこのようなプログラムをPC上で作り上げることができてしまいます。

悪用厳禁ですよ。

次回は、これらを利用して遠隔でメッセージのやりとりをできるプログラムの作り方を紹介します。

コメント

タイトルとURLをコピーしました