新・元地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記

自由な20代、窮屈な30代を経て、遂に40代になっちまったWebディレクター&パソコン講師の覚書と思う言(こと)。略称【ちほちゅう】

*

perlでハッキングツールは作れるのか?

   

  • このエントリーをはてなブックマークに追加

1年以上前の記事です。内容が古い可能性があります。

過去のエントリーで「ハッキングの仕方」なんて思い切った記事があり、
読んでみると

4-1. telnet辺りが開いていればパスワードツール(perlでも作成可)を使って侵入。

なんて書いてある。

自分が書いた記事でなんなのだが、
果たして本当にperlでパスワードツールは作ることができるのか考えてみた。

スポンサーリンク
 

そもそもパスワードツールとはなんなのか?
これは僕特有のバズワードで、ここではID及びパスワードを自動で次々に入力するアプリケーション又はプログラムのことを言っています。

さっそく「perl」「telnet」でググってみる。(当のgoogleはこういった使われ方を嫌がっているようです。)
すると、perlでtelnetを制御するには「Net::Telnetモジュール」が必要なことがわかった。
ということで、まずは「Net::Telnet」を以下より入手しインストール。
http://search.cpan.org/CPAN/authors/id/J/JR/JROGERS/Net-Telnet-3.03.tar.gz

さて、ここからプログラミングです。
以下に「Net::Telnet」を使ったプログラム例が紹介されています。
TELNETによるコマンド実行 – MASのページ

# お手軽な方法
use strict;
use Net::Telnet;
# 接続情報(環境に合わせて修正する)
my $host = 'hostname';	# 接続ホスト名 or IPアドレス
my $user = 'username';	# ユーザ名
my $pass = 'password';	# パスワード
my $prompt = '/\[.+\]\$ $/';	# プロンプト(正規表現)
my $telnet = new Net::Telnet(
Timeout => 10,
Prompt => $prompt,
);
# ホストに接続してログインする
$telnet->open($host);
$telnet->login($user, $pass);
# コマンドの実行
my @result;
@result = $telnet->cmd("pwd");
print @result;
# コマンドの実行
@result = $telnet->cmd("ls -l");
print @result;
# 接続の切断
$telnet->close;

最初に気になったのが

use strict;

って部分。
ここに関しては以下のサイトに詳しく乗ってます。
iandeth. – Perl/CGI辞典 – 土井 毅さん 著 – にて use strict が推奨されていない件について

注目すべきは「ホストに接続してログインする」の

$telnet->login($user, $pass);

ここをfor文やforeach文でループさせて、$pass++やら正規表現やらを使い、
ID及びパスワードを無作為入力させるスクリプトは理論上つくれるハズ。
あとは、それぞれのアルゴリズムをいかに解析していくか。
ま、この部分が一番難しくて奥が深いところなのでしょう。

実際は、サーバーのほうで連続してIDやパスワードを入力できない設定になっていたりするでしょうから、
ほぼ成功する可能性はゼロに近いと思います。
逆に言うとそういう設定にしておけば安全だと言うことです。

いずれにせよ、あまり詳しく調べたり実験したりするとあれなので、
もう、この件に関しては終わりにしたいと思います。

 - サーバー・ネットワーク, プログラミング

アドセンス広告メイン

Comment

  1. 名無しのリーク より:

    香川県ルー餃子のフジフーヅはバイトにパワハラで指切断の大怪我を負わせた糞ブラック企業

Message

メールアドレスが公開されることはありません。

  関連記事

【眼から鱗】ブラウザのキャッシュはHTMLで制御できた

1年以上前の記事です。内容が古い可能性があります。過去にはサイトデザインをプリン …

no image
ネットワークトラブル対策

1年以上前の記事です。内容が古い可能性があります。会社でG4が一つダメになった。 …

no image
一度見たFlashを見せない方法

1年以上前の記事です。内容が古い可能性があります。最近は減ってきているけれど、 …

WordPressでテーマカスタマイズ、ヘッダー(header.php)、フッター(footer.php)で消してはいけないプログラム #wp

1年以上前の記事です。内容が古い可能性があります。自分でカスタマイズしたWord …

no image
Yomi-Search系検索エンジン自動登録システム

1年以上前の記事です。内容が古い可能性があります。Yomi-Search系検索エ …

Wi-Fi(ワイファイ)じゃないよ「Li-Fi(ライファイ?)」とは何のこと?

1年以上前の記事です。内容が古い可能性があります。Wi-Fi(ワイファイ)に変わ …

さくらでEC-CUBEバグ取りメモ

1年以上前の記事です。内容が古い可能性があります。前回、商品検索のバグを取った後 …

DNS(ネームサーバー)の設定が書き換わるまでの挙動

1年以上前の記事です。内容が古い可能性があります。最近、ドメイン移管に伴ったDN …

no image
ハッキングの仕方

1年以上前の記事です。内容が古い可能性があります。攻撃方法を知ることで防御策を講 …

no image
シンボリックリンク

1年以上前の記事です。内容が古い可能性があります。な、なんとしても初の皆勤賞を。 …

血液型オヤジ