やかんです。

集中講義最終日ですね。講義が終わるとレポート課題が出るので、夏休みはまだまだ先です。

東大生やかんのブログ
やかん

頑張るぜ

まあ、院試を控えてたり卒論着手してる友達に比べればちょろいもんですね。

講義メモ

  • vncは今まで結構使った気がする。
    • windows環境をawsに構築してるのか?GUI付きのOSをインストールしてるんだろう。サーバーは画面ないけど、GUI対応のOSをインストールすることは可能なのだろう。
  • ウォーターフォール開発の場合、最終段階で脆弱性診断とかやると修正コストがめちゃ嵩むわけだ。
  • GETメソッド関連のリクエストは、ブラウザにもキャッシュが残るのか。アクセスログにも残る。
    • アクセスログについては、ユーザーが消そうと思って消すことはできないよな。
  • 脆弱性診断か。この脆弱性に引っかかるようじゃ安全性なんてお話にならないぜってことか。
  • GETで検索のクエリを打てる場合、検索条件の共有が簡単なわけか。
    • でも、フラットに考えれば、検索のクエリはPOSTのエンドポイントに格納すべき。
    • ↑とはいえ、共有のしやすさという点に力点が置かれる場合、例えばgoogleのサービスなどは基本的にGETリクエストが用いられるらしい。
  • Burp Suite
    • ローカルプロキシツール
    • こういうの、研究室の人絶対使ってるだろ。。
    • これ普段の開発もリバースプロキシ使えば楽なんじゃないか、、?
  • session idの仕組み
    • ブラウザが、というかアプリがsession idを毎回送信している。
    • d3av0v5uka7cqh3gjnoo4d83qp
    • でもsession idは更新されるよね?適宜。
    • え、session id取れるだけでいいの?想像以上に簡単なんだが。
  • session idの仕組みと脆弱性、理解した気になってたけどそんなことないな。

XSS

  • クライアント側での文字数制限は、ローカルプロキシツール使えば関係ないのか。サーバーサイドでも文字数のチェックをする必要がある。
  • ユーザーからの入力情報を何もしないでhtmlに埋め込む → ユーザーが任意のhtmlを作ることができる。
    • でも、ユーザーが入力したhtmlが、他のユーザーにも表示される状況って結構限られるのではないか?掲示板とか。
  • owasp encoding cheat sheet

SQL injection

  • sqlインジェクションって今もあるんだ。。
  • ↑#で、以下をコメントアウトするのか。
    • ex. admin’#
  • sqlには、管理テーブルが存在する。
  • unionで、管理テーブルをくっつけて出力させる。
  • こんなホイホイデータ取れちゃっていいのか?
    • sqlインジェクションについて、’を打ってsqlエラーになれば脆弱性あり。
  • ‘ or 1 = 1 #
    • よくあるやつ。
    • 条件が常にtrueになれば、データ全員に対してなんらかのクエリをかける事が出来る。

ディレクトリトラバーサル

root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin systemd-network:x:100:102:systemd Network Management,,,:/run/systemd/netif:/usr/sbin/nologin systemd-resolve:x:101:103:systemd Resolver,,,:/run/systemd/resolve:/usr/sbin/nologin syslog:x:102:106::/home/syslog:/usr/sbin/nologin messagebus:x:103:107::/nonexistent:/usr/sbin/nologin _apt:x:104:65534::/nonexistent:/usr/sbin/nologin uuidd:x:105:110::/run/uuidd:/usr/sbin/nologin avahi-autoipd:x:106:111:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/usr/sbin/nologin usbmux:x:107:46:usbmux daemon,,,:/var/lib/usbmux:/usr/sbin/nologin dnsmasq:x:108:65534:dnsmasq,,,:/var/lib/misc:/usr/sbin/nologin rtkit:x:109:114:RealtimeKit,,,:/proc:/usr/sbin/nologin lightdm:x:110:115:Light Display Manager:/var/lib/lightdm:/bin/false cups-pk-helper:x:111:118:user for cups-pk-helper service,,,:/home/cups-pk-helper:/usr/sbin/nologin speech-dispatcher:x:112:29:Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/false whoopsie:x:113:119::/nonexistent:/bin/false kernoops:x:114:65534:Kernel Oops Tracking Daemon,,,:/:/usr/sbin/nologin saned:x:115:121::/var/lib/saned:/usr/sbin/nologin pulse:x:116:122:PulseAudio daemon,,,:/var/run/pulse:/usr/sbin/nologin avahi:x:117:124:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/usr/sbin/nologin colord:x:118:125:colord colour management daemon,,,:/var/lib/colord:/usr/sbin/nologin hplip:x:119:7:HPLIP system user,,,:/var/run/hplip:/bin/false dojo:x:1000:1000:dojo,,,:/home/dojo:/bin/bash vboxadd:x:999:1::/var/run/vboxadd:/bin/false sshd:x:120:65534::/run/sshd:/usr/sbin/nologin mysql:x:121:127:MySQL Server,,,:/nonexistent:/bin/false tomcat8:x:122:128:Apache Tomcat,,,:/var/lib/tomcat8:/bin/false postgres:x:123:129:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash geoclue:x:124:130::/var/lib/geoclue:/usr/sbin/nologin xrdp:x:125:131::/var/run/xrdp:/usr/sbin/nologin gnome-initial-setup:x:126:65534::/run/gnome-initial-setup/:/bin/false gdm:x:127:132:Gnome Display Manager:/var/lib/gdm3:/bin/false

File Upload

  • index browsingとは?

そのほか

  • ジョンザリッパー?
  • ハッシュかけても、アルゴリズムを指定すればある程度可逆的な値っぽく扱えるんか。とんでもねえな。
    • ↑これ違う。よくあるパスワードのリストをハッシュして照合していき、一致したら解析完了、など。ハッシュ化しても、よくあるパスワードだと意味ないのか。
  • パスワードリスト攻撃は、パスワード使いまわしてる人しか被害に遭わないと、原則。
  • パスワードリセットは結構危ないのか。。
    • パスワードなしでユーザーがユーザーであると信じ込むわけだからな。
  • 画面上からボタン消したりしても意味ないんだな。。
  • ユーザーの入力値というか、ブラウザから送信される値をそのままアプリで利用するのは良くないんだな。
  • NRIセキュアの人楽しそうでいいな。
  • CSRF
    • これは、踏んでしまった瞬間に終わりってわけか。
    • XSSは、もう1ステップある。

まとめ

演習多めで面白かった。人数多めの講義なので退屈な時間も多かったけど、それはしょうがないね。

東大生やかんのブログ
やかん

すみません、内職が捗りました

何はともあれ3日間ありがとうございました!

というわけで、集中講義お疲れ様でございました。何やらレポートがちょっと重そうですが、頑張っていこうと思います。

最後までお読みいただき、ありがとうございます。