ほぼPython

Not技術ブログBut勉強ブログ 内容には誤りがあることが多いです

PythonのGUI自動化で自作Webサイトにハッキングを試みた

今日、図書館で退屈なことはPythonにやらせようを読んでいたらGUIオートメーションについての記載がありました。

 

GUIオートメーションとは、キーボードやマウスをプログラムで操作してフォームの入力など退屈な作業を自動化するといった話のようです。

 

当然の発想ですが、GUIオートメーションによって、セキュリティが(ものすごく)低いサイトに対してなら簡単にハッキング出来ます。

 

ということで、さっそくやってみました。

 

今回用意したデモサイトは

フォームに4桁のパスワード(数字)を入力し、パスワードが一致すると他のサイト(僕が前に作ったデモサイト)に飛ぶという仕様になっています。

さらに、何度入力を間違えてもロックがかからないというセキュリティがひどいものになっています。(そもそもパスワードの認証部分はJSで書いていて、まったくパスワードになっていませんが、見かけ上パスワードということで。)

 

pyautoguiというすごく便利なモジュールを使って

 

・マウスの制御によりフォームのクリック

・キーボードの制御によるパスワードの入力

 

を行います。そして、別ページに飛べるまでループを続けるという処理により、ハッキングしています。

 

退屈な動画ですが、ハッキング動画はこちらです。

 

 

 

 

 

くどいようですが、マウスクリックや入力はすべてプログラムが制御しています。

ただ、動画を見ていただけるとわかると思いますが、思っていた以上に動きが遅いです。

そうは言っても4桁ですべて数字・何回ミスしてもロックされないというゆるゆるセキュリティのサイトがもしあれば、こういうプログラムを起動して放置しておけば、侵入できてしまうので、危ないですね。(まぁ、そんなサイトはないと思いますが・・・)

 

ハッキングなんかせずとも、GUI自動化をすれば繰り返しのフォーム入力の自動化など面白いことがいろいろできます。皆さんもぜひ試してみてはいかがでしょうか。

 

コードはすごく簡単なので、今回は公開はしないでおきます。

ほとんどpyautogui.clickとpyautogui.typewriteだけしか使ってないです。