2016-04-12 23 views
0

私の学校のウェブサイトにログインし、私が気づかなければならない更新を確認するプログラムを書いてみたいと思います。私はJavaScriptが比較的新しいです。私はログインページのソースコードを見て、ユーザー名とパスワードがaction属性を使って送信されているようです。 (ボタンを押したときに呼び出されるJavaScript関数を見つけようとしましたが、失敗しました。また、アクション属性は値に設定されています)。データは検証のためにサーバーに送られて、私はログインページの操作を模倣するacプログラムを書くことができます。何が送られているのか見てどうですか?ウェブサイトのHTMLフォームからデータを取得

 <form action="http://[myschoolsdomainname].edu/login/index.php" method="post" id="login"> 
     <div class="loginform"> 
     <div class="form-label"><label for="username">Username</label></div> 
     <div class="form-input"> 
      <input name="username" id="username" size="15" value="815008955" type="text"> 
     </div> 
     <div class="clearer"><!-- --></div> 
     <div class="form-label"><label for="password">Password</label></div> 
     <div class="form-input"> 
      <input name="password" id="password" size="15" value="" type="password"> 
      <input value="Login" type="submit"> 
      <input name="testcookies" value="1" type="hidden"> 
     </div> 
     <div class="clearer"><!-- --></div> 
     </div> 
    </form> 

N.B.:ここ

は、ウェブサイトのコードです私は何か悪意のある行為をしようとしていない、私は定期的に宿題が投稿されているかどうかを確認するためにサイトを自動的に(CまたはJavaを使用して)チェックしたい。私はコードを書くのが好きで、私がこれをやることができるかどうか不思議ですが、どこから始めるのか分かりません。

+1

Chromeの[ネットワーク]タブを使用して、サーバーに送信されるペイロードを確認できます。彼らが適切に処理していれば、あなたの学校ではCSRF保護が実装されています(CSRFトークンがヘッダーに渡されていることもありますが、ペイロードにあることもあります)。あなたは本質的に自分のウェブサイトを掻き集めています。ウェブサイトの使用条件を見るとほとんどの時間が禁止されています。 –

答えて

0

私はNick Delaney - ネットワーク上のタブ(MacのOption+Cmd+i)にあなたが見たいものを表示することに同意します。表示されるパネルの上部にある[ネットワーク]をクリックし、[ログを保存する]チェックボックスをオンにします(これを行わないと、ページ全体の読み込みで履歴が消去されます)。

サイトにログインし、後続のページを表示するすべてのHTTP要求を表示できるはずです。 CSRFは問題であるかもしれないし、問題ではないかもしれませんが、実験的なことだけがあなたに伝えます。

たとえば、これはstrava.com(フィットネス活動を追跡する人気サイト)のログイン要求です。これは、フォーム投稿投稿emailpasswordauthenticity_token(hm、これは何ですか?:)、utf8remember_meフィールドがあることを伝えます。成功した応答は302 redirecthttps://www.strava.com/dashboardであり、Cookieもいくつか設定されています。

strava login request

私はリダイレクトに従っている場合(ブラウザが自動的に私たちのためにこれを行います)と私は、ログに記録のためのダッシュボードページを表しHTMLが表示されます(現在ハイライト表示されている要求の下に)ダッシュボードのHTTPリクエストを見てstravaのユーザー(私)。必要なデータがダッシュボードにある場合、リダイレクト(ログインリクエストで設定されたCookieを使用)に続いてレスポンスを解析して、「正しい」ログインリクエストを作成することが課題です。

関連する問題