OSI参照モデル、TCP/IP、POSTとGET、SQLインジェクション、XSS、公開鍵暗号

コラム

Web関係のエンジニアなら知っていて当然。

 

 

え??しらない!!って思った方。

復習しておこうか。

この記事ではさわりだけ紹介。あとは各人で調べようね。

 

こういうのは新人研修でやってほしい。。

 




OSI参照モデル

OSI参照モデル(Open Systems Interconnection)とは、

国際標準化機構(ISO)により策定されたコンピュータなどの通信機器の通信機能を、階層構造に分割したモデル。

レイヤと言われる7つの層に別れています。

第7層 – アプリケーション層

具体的な通信サービス(例えばファイル・メールの転送、遠隔データベースアクセスなど)を提供

HTTPやFTP等の通信サービス。

第6層 – プレゼンテーション層

データの表現方法(例えばEBCDICコードのテキストファイルをASCIIコードのファイルへ変換する)。

第5層 – セッション層

通信プログラム間の通信の開始から終了までの手順(接続が途切れた場合、接続の回復を試みる)。

第4層 – トランスポート層

ネットワークの端から端までの通信管理(エラー訂正、再送制御等)。

第3層 – ネットワーク層

ネットワークにおける通信経路の選択(ルーティング)。データ中継。

第2層 – データリンク層

直接的(隣接的)に接続されている通信機器間の信号の受け渡し。

第1層 – 物理層

物理的な接続。コネクタのピンの数、コネクタ形状の規定等。銅線-光ファイバ間の電気信号の変換等。

 

引用:Wikipedia 

TCP/IP

言わずと知れた、、、と言いたいところですが、こちらも説明しろって言われたらめんどいですよね。

TCP/IPとは

インターネットの基本プロトコル(通信規格)であるIPとTCPの2つを対にした言葉で、

通信の基本技術や設定を指します。

TCPはIPを利用して確実にデータを転送するプロトコルです。

インターネットの多くのサービスが利用しています。

引用:コトバンク

 

POSTとGET

HTTP通信を行うにあたってリクエストの方法の種類とでもいいましょうか。

 

GET

HTTP通信で、サーバから情報を取得してくる時に使用する

他人に見られたくない情報は、GETでは送らない

送信できるデータ量に制限がある

ブックマークに保存する場合

テキストデータのみ送信できる(バイナリデータは送信できない)

POST

HTTP通信で、サーバへ情報を登録する時に使用する(データベースへの格納など)

データ量が多い場合(GETでのデータ送信量制限を超えてしまう場合)

バイナリデータを送信したい場合

他の人に見られたくない情報を送る場合(パスワードなど)

 

下記サイトより引用

 

SQLインジェクション

WebサイトでDB扱うなら必ず出て来ますね。

アプリケーションが想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法です。

 

Webフォームに直接SQLを書いて情報を引き出すといったものが昔はあったということです。

現在ではあまり意識しなくてもフレームワーク側で吸収してくれていたりしますが、なぜそういう作りになっているのかを理解するために、SQLインジェクションのような脅威があったことを知っておきましょう。

 

XSS クロスサイトスクリプティング

クロスサイトスクリプティングとは、Webアプリケーションのようにユーザーの操作によって表示内容が変わる「動的なページ」を自動生成する仕組みの脆弱性を狙った攻撃方法のことです。

 

ユーザのアクセス時に表示内容が生成される「動的Webページ」の脆弱性、

もしくはその脆弱性を利用した攻撃方法のことです。

動的Webページの表示内容生成処理の際、Webページに任意のスクリプトが紛れ込み、Webサイトを閲覧したユーザ環境で紛れ込んだスクリプトが実行されてしまいます。

 

 

created by Rinker
¥1,028(2018/09/26 05:51:33時点 Amazon調べ-詳細)

 

公開鍵暗号

RSAなどに代表される暗号化鍵方式の1つ。

暗号化と復号化を別々の鍵で行う方式です。