2016-11-22 7 views
0

私は最近、ネットワークプロトコルの考え方や、クッキーなどの項目をコーディングして、何かを考えたときにパケットをサーバーに送信する方法について、Cの本を購入しました。バックスペースをクエリに挿入できますか?私は最初はちょっと馬鹿だと思っていますが、これは私の論理です。ウェブサイトに行くときにアウトバウンドパケットを監視すると、クエリの記述方法を見つけることができます。これを使用すると、そのパケットを再作成できますが、サーバーに送信されるテキストを08の値に割り当てられた文字を含むように変更します)クエリーテキストにバックスペースキーを注入しますか?

Cでネットワーク経由でデータを送信し、その16進値を調べて、文字列がフォーマットされるまでバックスペース文字で前の文字が削除されないことがあるかどうかは疑問です先。私はこれがSQLインジェクションを実装する方法であるかどうか不思議です。なぜなら、文字列フォーマット処理中にエスケープされた後にエスケープされたものを削除するようにフォーマットすると、次のバックスラッシュからエスケープできるからですキャラクターを逃れるために)あなたは少しでも難なくあなたの攻撃を行うことができます。

したがって、クエリに送信されたときに文字列がどのように表示されるかを視覚化したい場合は、試行します。私はこの考えていますかと間違っているかもしれません

string_before_format = [ '] [BS]フォーマット中に['] [SQLインジェクション] = [] [] [ '] [SQLインジェクション]

私はそれが可能であるかどうかを知ることは興味深いと思います。彼らが言及される前に、私が出て行かない理由は、SQLインジェクションをしようとするとネットワーク管理者が気にしない灰色の領域であり、刑務所に行き、私自身がサーバーを設置してホストしている経験がないので、もし私が自分で作ったのであれば、そのような攻撃が可能になる。

+0

私の経験では、私も3、4年前にこの考えを持っていたので、私は先に進んでそれを試しました。私がテストしていた環境では、その時点ではうまくいかなかった。 '0x08'はキーストロークとして入力されるまで特別な意味を持ちませんが、それまでは無意味で表示できない文字です。おそらく、ペイロード/クエリがSTDINを介して何かに供給されているような奇妙なコーディングがあったとしても、この考えはうまくいくかもしれませんが、それでも私はそれに賭けません。それにもかかわらず、それは私の個人的な経験に基づいているので、おそらく他の誰かがより多くの洞察を提供することができます。 – SpencerD

答えて

0

ネットワークメッセージにASCIIコード8(バックスペース)を送信することはできますが、バックスペースは多くの印刷不可能な文字の1つにすぎないので、面白いことはあまりありません。これは、端末または端末エミュレータで「カーソルを後ろに移動する」という特別な意味を持ちます。クエリ文字列全体を受け取るプログラムが、他の多くの印刷不可能な文字とは異なり、バックスペースのための特別なロジックを実装する可能性は低いです。

もちろん、あなたがそれを(あなたに属するシステム上で)試してみる必要があるならば!

関連する問題