Author:やる夫達のいる日常
ちょっとずつでも日常の生活を取り戻さないと
NEW!新規まとめ作品第1話リンク
3/26
勇者アスランは魔王を倒すようです
1/7
婚約破棄令嬢は告られたい
クランリーダーとして求められる、たった一つの大きな資質
8/16
『ヒーロー』を創りたかった漢達~脚本・監督・主演:僕~ 第一話:僕が来てしまった
8/12
ショーダウン ~ポーカー学園都市の魔物~
8/5
できない子はマスターソードを手にするそうです
8/3
やる夫はかまいたちの夜を過ごすようです
7/9
君ガ知覚ニ
Pick up!
いきものがかりたち
プレ医師ネタ 神奈川県医師会からのお願い
このブログについて詳しくはこちら
About
プライバシーポリシー
現行作品リスト
完結作品リスト
※注意
当ブログからの転載はおやめください。
元スレ及び掲示板の規約に従うようお願いします。
※コメントに関して
一部のスラング的な表現が含まれている場合、内容の如何を問わず承認しない場合があります。ご了承ください。
コメントの文字数に対し上限を設定しています。お手数ですが長くなってしまった場合、2回に分けるなどお願いします。
またコメントの承認は必ずされるものではありません
PASSを設定していないコメントに編集用リンクが表示されないように変更しました。
※したらば掲示板文字化け発生中
元AAがわかる物や文字化けの規則性がわかっている物は、出来る限り修正していく予定です(わからなかったらそのままになるかも…)
※推奨ブラウザ
Google Chrome
edge(Chromium)
Firefox(※AAの表示は大丈夫だと思いますが、あまり確認できていません。)
非推奨
IE(また開発が終了しているブラウザのため対応予定はありません)
その他ブラウザは確認できていません。
Saitamaarフォント様を導入しています。
手持ちのiOS及びAndroid環境で表示確認済みです。
相互リンク、相互RSS募集してます
連絡等は以下のどちらかへ
(Twitterで連絡してくださる方がありがたいです)
@yaruonitijou
メールフォーム
まとめ依頼の受付を一時停止します。
楽しいクラッキング SQLインジェクション
1/5
、
l.l'、
___.| .!.l,
_..i''./ ''| l 'l、
,r'" .'"'''' l、 .ゝ|.l
/ ./ ヽ-,.l.l
! _iゝ /.! |.l;;..l.l SQLインジェクションについて簡単な解説だ
! .,i/ヽ././//ll.!i.l| 今回挙げる例みたいな単純なのが現代において成功するはずはないですが
!.i、 ./| .__ヽl゙ | ゙l,゙,,,! もし成功したら草を生やした後で捨てアカからのメールで警告してあげましょう
|.!.ヽ .l'"'" l o〃 |
,, -'|,.l ! .l .l ||! ./
.l, l゙ ゝ'" ./ .......'ノ_| !-;;/......,, こいつは2005年頃から認知され始めたらしく、いまだに被害が出ているそうな
|.ヽ'、.l .ヽ_ .| 'i;;r‐ l l.,i'!ミ'i、 .ヽヽ,
l, ''''ミニ、.''│ |;;.lii|i〃、 .l !.''!/、.lヽヽ
./ ヽ. .'"'''i_,゙''--!〃 ' .,!/ .ヽ ! ! 2005年3月のクラブツーリズムへの攻撃あたりから有名になったのかな?
_..-!-''--.. \ , l..'"'" .,/|.! /'゙.l'./ ./
i-'' \ .'"''- |....,,,,___ / 〃/ ./ |,゙|
' '' ''''''''''''''''''''`-`-.' ' '
l 、
.l l
,! .Y.!
// ! .l〈 !ヽ,
/:./ヽ/ !ヽ/ヽ! SQLとはStructured Query Languageの略で
!::r⌒ヾ()r⌒:!:! データベースを操作するための言語のことだ
〈:ヽ、_ノ=ヽ._ノ:〉 このSQLはユーザーの入力フォームから入力した場合でも機能してしまう
ヽ!/ ! M ! !/ SQLインジェクションはこれを利用したデータベースへの攻撃だ
.`、ヽ==/I- ̄ヽ これ、正面玄関から堂々と攻撃しているようなものなのでセキュリティソフトに引っ掛かりにくい
!'"トニ‐-イ//' ̄ ̄ ̄ ̄ ヽ、 裏口の鍵を壊すなんてことはしていないからな
-‐= ̄"\==/- ̄ヽ. ! └ーニ=ー〉
-"`" /〟 !! 〝 !/ ̄ ̄ニ‐-./ 攻撃の例を示そう
ヽニニソ .!! !ェエエエ工エ 今回はパスワードなしでログインしてみる
エエI] /\ 〟〉ヽニニニ、
r"/ ̄ミ!j / ヽ /ヽ,\ニニニヽ
!( !__ミ!ヽニ〈 〉 ///./ ! !ヽ ~ヽ
ヽニニ/ \ 'ク ┌、//_/_/.! ヽ ~ヽ
"Eニニニニ"二ニ==-/
!_ 、ニー /, !
r'r'∧}]ニ-,ー!ニ!! ̄ !
!└Y-┘! !--‐‐‐!! !
.
2/5
入力されたパスワード A
入力されたユーザー名に対応した記録されているパスワード B (今回はpassword)
次の等式が成り立った場合、ログイン成功
A=B
//
/ / ./|
/ 〈⌒V// |
| |〉 / / / |
| |/ / / ∧ 非常に雑だが、認証を行うための命令文だ
|‐r‐┴、 / / | なんとなくわかってもらえると思う
|‐|、__ } } イ ノ _
\_,、,、〈 ニニニニニV └┘ .| さて、いたずらの時間……の前にコメントについて解説する
ト、 \ ノ /  ̄ ̄ ̄ / /| |\| プログラムの中にメモ書きができる機能、と認識してくれれば良い
r|ミ}ハ /ニ V/ / ̄ ̄ //ニ ニ| | SQLの場合は、この行を以下コメントにする命令は -- だ
. ハ __|ハ / / ̄ ̄/ ̄ /_| | | |
| | ハ /|/ / /| | | | | |__ _| |
| |―――V. | | |_|/ ̄ゝ__] [_ノノ ではいよいよいたずらの時間だ
/ | | | / ̄ ̄\ / パスワード欄に 1=1 -- と入力してみよう
ヽ__.〈 \ / V / / \_.イ
ゝ__ V /\ / 〈__| / .|
/{
/ / |
/ / ]L
/ /| |∧
/| ,/ /} ! ⌒∧ /|
. /::::::|/ / .| {/ _ ∧ //! 次の等式が成り立った場合、ログイン成功
|::::: / /:/ | ∨∧ ∧__/ ./:::: | 1=1 --=password
|::::/ /{/ | ∨∧. ∨ ./: : /|
∧:{ ∨ |:. ∨/ / /:::::: | | こうなる
. /マ\ `弓!弓 ̄,/ / ::::::: | | そして -- 以下はただのメモ書きだからコンピューターからはこう見える
. |::::: \\厂 ̄{_ >─- 、::::::::: / .!
. |::::::, ィ⌒ヽ[o],///////∧:::::/ .| 次の等式が成り立った場合、ログイン成功
. |l:::j|/////}二_{////////i}::::{\_| 1=1
. ||::::{/////|二_∨///////:::::| /
. ∨.乂//_ノ`Y⌒\__.イ::::::/ ./ / 結果は言わずもがな
.. ∨ } /厂{ ̄}_\ {:::::::{ { /
∨ ∧∨ ̄\/∧ 、に二ソ ./
L_{L∨ ̄\/厂 \___ム ./ __
___\∨ ̄}// 厂 ̄ ̄ ̄> 、/ ./二二
._ //二二寸\_,/ /二二二二二ア /二二二
\ //二二ニ=≦ ̄ \ム二二ニ/ ̄´ ./二二二二
\/ {_> ´ ̄ (九}=──{ (_) ./二二≧=─
. /´ ̄|厂 // .::::::::::| __/二ニ イ´
/ ./|| // ∨ |二ニ/
./ //|| .| | | |ニ/
.
3/5
ログインヨシ!
∧ /ヽ
// ̄ ̄\|
∠_╋__〉
/ ①八① ヽ _
工ニf(_人_)エ二|′)ヽ
\ヽヽノノ ノ ヘ |
⊂⌒)_>―――′イ (_)
`ー、_ノ/ ̄ヽ |
_|| | |
( 人_ノ Λ
\ス ̄ ̄レ-Λ \
( ̄ ) / / \ノ\
 ̄ ̄ ( ヽ \_)
\ノ
Π l7l7 _Π_ / //
.| .\ |_,―‐,. | 〔/ /
.|_|\| ,ノ ノ /
_ . ̄ l7l7 / ,ィ .::::::::::::::::::::/ミ / / |__| 〈 ヽ | |
l二 ̄| ヽゝ /'7 7_//:::::::::;;;;;;;;;;;;/ ヽ/__/ノ .| ヽ 7 レ
.┌┘ | ∠ノ /:::::::;;;;;;;;;;/lニ\ / | // l プログラム上はどこからどう見てもヨシ!
 ̄ ̄ _ l7l7 /::::::;;;;;;;;;;l二].__ \\ | //.__ | だから仕方がない
Π l7l7 /,二, / /::;;lヽ、;;;;;l/  ̄ \ヽ ヘ//;;;ヽ
| .\ ./, 二 / {;;;;| ノ;;;/ ,,.:::::::::::,,....ヽ,◎./;;;;;;;;;;;l 管理者権限でログインしてしまえばなんだってできる
|_|\| .~ /_/  ̄フ.|;;;ヽ:::::::::::::::::::::::::ノ''ー'|;;;;;;;;:;;;l 顧客情報抜き放題
/>;;;;;\:::::::::::::::/"ー"ヽ、;;;;;ノ 書き換え放題
Π Π l7l7 >;;;;;;;;;;;;;;;;ノ ̄ノフ"` \/ ヽ l7 バックドア仕掛け放題
l | | .\ \;;;;;;;;;;/ //ト l\|ヽ/i |/ノ マルウェア仕掛け放題
|_l |_|\| トー-┬\ \ | \/ヽ_/// 偽サイトへの誘導も楽々だ
| ̄''=/ニヽ\ \l____ ノヽ、//
l二l ,-, l二l ,-, i .゙'-」|,, "─,,___/
∠ノ ∠ノ {
. n. n. n l
|! |! |! l
o o o ,へ l
.
4/5
,r '/
/ /,'
/ l :l , r"l
/ .| ヘ`ヽ//ハ
| ', 〉' / / |
| 〉'´./ ./ .ト
l| |_| / .| | |ヽ、
.ト、r': : : ´ヽ ', / | / 〉、
l: :', ',: : : : : : | ', ./ l / l ヘ
ヘ,_l ゝ、_丿 '‐'`-‐'´|`ヽ、_, -─┬一 / |. ヘ
ヽ' ミヾ/ヽ---─''"´\ /|_/ ヘ ヘ_, r'" , r' \ | で、対策なんだが
ヽヾ/ / | ∧ , r'" \ ,/ヽ,| この場合 - の文字を使用禁止
Γ゙一' r'  ̄ ̄ ̄ヘ \\, ' _ / ついでに入力不可能にしてしまうのが手っ取り早い
lヽ /"´l__|`i '- 、__, r'" ヘ  ̄ , r",、 これ以外の攻撃に使われるような記号も同じくだ
| \ ,r' " | ',_/ ヘ ヘ_/ / ヽ
ト 、 \'__ノ ', /`ヽ、 ヘ / ∧ 一部の記号がパスワードやユーザー名に使えない
| `l────┐ ', /, lヘ ヾヘ、 /ヘ, ノ .∧ そんな経験があると思う
\ .| | | | | | ', ./ | ヘ| ∨| ヘ, r'" | ∧ それ、SQLインジェクション対策だったりする
\ T ̄二二二, r '"∨ / ゝ, 'l / /ヽ___/ , 、 (あとは見間違えによる ふっかつのじゅもんがちがいます 対策)
\/´ |` ヽ、 入_ ./ ヘ / / / /、 ,二l "´,、〉
', `ヘ l`' `゙ ー 、 `二, / '─- 〈 / ` / l'二 /
', ',. \ / / / `/ / 電話番号入力欄は半角数字以外入力不可
', r'" / ̄`゙ヾ、┌────┐ _/'ー 、./ ./ / なども同様の理由だな
\ /_ r'"ヽ.| /\ .l 〈_ / / /
r-一'"__ `゙/ヽ、\ ヘ / .|‐/ `/ / /
| l" ´ / | / ヽ `/´`/‐-< ,-‐〈 `` 、/ /
゚ 。 { { ゚ 。ヾ ‘,、 `ヽ ゚ ,ノ ゜
゚。 ', ', }. }! Y ',Y 。゚ ’
. \ ヘ ヘ ゜,' リ }! }!. ,, /
\\ 。 ヾ ', / ,イ ./ 从 ,イ/
\ \ ',、 } ,'. , '/. ,イ ハ. // 入力できるサイトは対策をしていない……とも限らない
。 \ `.-、 }l`V i{/ 〃 / ,イ // ゚。 例えば - を minus に入力した時に置き換える仕組みを入れてもいいし
\ `' ノ 八. 、丶` / 入力された文字列が命令文としては
, ッ \ / 。 認識されなくなるように設定することもできる(プレースホルダ)
____Z  ̄'''―--z__
. ──==二二二__. r‐┐ r──────── ほかには
_.;;彡-ッ ,イ::::ミ ,,,,、 \ 入力フォームを用途以外の目的で使えないように設定
'"´ / ,.. / /⌒} \¨''ーニ;;、、 ユーザー名を入力する場所ではユーザー名一覧以外へのアクセスは必要ない
,.;;ン‐″./ //⌒} !l>、. \ ´
,..广 ./.,v. / /V=ミ l `'-、. `'-,.,
. " .,j./ //:::::|{::ク⌒ヽ..l . `'-、\
〃 i..|::::::::::/ ∨⌒∨ `'''ヾ、
,i'゚ /::::::::::', _,,>ミ::∨ ゚' , 侵入された後の操作を監視する
l′. |:::::::::::::|,ィア / ヘ:::∨ 顧客情報を全部ダウンロード、なんて動作は普段はやらないからな
ハ:::::::::::::|/_ハ./ __}::::|
| |::::::::::: |廴〉,―v'}::::|
ヘ〉:::::::::/┐_/ァ彳:::::,' 最後、システムメッセージの工夫だ
|乂::ノ \:::::/ヽ:::/ 例えばユーザー名が正解、パスワードが違う状況なら
|/ | 〕〔 | パスワードが違います
ヘ /\/ \_,イ パスワードとユーザー名を確認してください
ヘ / ', | この二つなら下がいい
ヘ_ヽ___.// 上だとユーザー名が正解であることを知られてしまう
',::::::::::::::::::::::::| 攻撃者に余計な情報を与えてはいけない
_|::::::::::::::::::::::::|__
| [[[[[[| △ ]] |
 ̄:::::::::::::::::::::::::::ヘ
/::::::::::::::::::::::::::::::::::',
/::::::::::::::::ヽ::::::::/::::::::ヽ
.
5/5
. ∧
. /|ハ ̄ `ヽ
/ .! .∧::::::::∧
___| | ∧::::::::∧_ こんなところかな
. / 厂 |\ /⌒ヽ::::://\_ 自分は自分で組んだ奴に試したことがあるぐらいです(楽しかった)
、 _ ─ r─ -、.}={///ノ/ム二二二≧_ torさん、プロキシさん、VPNさん、匿名の力お借りします、なんてやってません
\ | / \Z彡「 ̄/::::::::::::::::::::} .} ネカフェの端末にバックドア仕掛けたこともありません
.\ \ .| /_ /\ ̄} ̄ }:::::::::::::::::/./ 個人情報の販路持ってないし
__フ、 /⌒ヽ ____,} .| .|:::::::::::::::::{/
__ ィ{二ニ= Y ̄\ |__,|_,|___/
. / .||___/ ̄ ̄\.\\ ̄ あ、犯罪だから絶対にやるなよ
/ .| |\___〉/〈 \ 推奨しているわけでもないぞ
.〈__|__|_>一 ´___
人LL[〈 〉 |}
/ \─一 '
/ У /
おしまい
以上です
私は断じて他人のシステムを攻撃したことはございません
乙でした
2005年だったかは忘れましたが、業務で対策しました
初期だったので自分たちでサニタイジングするための関数作って、全クエリを一つ一つ見直して実装という……
もう、あれはやりたくない (プログラミング言語の方で対策できる記述方法がありますので、今はそちらを使いますね)
>>8589
初期に対応した方が居たとは……
乙でした
乙でした
一番影響があった悪戯は、モバイルでサイトを開くとシャッター音がなるコードでしたね
あとは、パスワードかけ忘れた家庭用Wi-Fiの振りして、アクセス解析なんてのもやりました
大学のセキュリティ研究ネタ有る有るですが
投稿乙でした。
>>8585 の「プレースホルダ」でHTML技術の方を思い出してあれ? ってなった(恥晒し)
そうだよね、SQLでの置換技術の名称もプレースホルダだもんね……
乙
>>8585
> システムメッセージの工夫
これやってもSLEEP()とか使えばレスポンスまでの時間でインジェクトした条件式が正しいか判定できたりするんだよね
結局脆弱性がある時点でダメってことだな!
|
|
≪ 読者投稿:小ネタ 群馬弁標準語化計画 | HOME | 読者投稿:あるネット証券会社のざっくりした特徴 ~ ネット証券だと ≫
|
|
≪ 読者投稿:小ネタ 群馬弁標準語化計画 | HOME | 読者投稿:あるネット証券会社のざっくりした特徴 ~ ネット証券だと ≫