HTTP & Network Basic (재미있게 배워보는 웹과 네트워크 입문)

HTTP & Network Basic (재미있게 배워보는 웹과 네트워크 입문)

$15.00
Description
[그림으로 배우는 HTTP & Network Basic]은 웹의 근간을 이루는 HTTP를 중심으로 하여 웹, 인터넷 데이터 통신 분야의 기초가 되는 내용들을 다루고 있다. 초반부에는 인터넷의 역사부터 시작해 인터넷을 하면서 자주 보게 되는 프로토콜인 TCP/IP를 비롯해 여러 프로토콜에 대해 설명하고, 중반부에서는 본격적으로 HTTP에 대한 내용들을 다룬다. 후반부에서는 우리가 인터넷 뱅킹을 이용할 때 자주 보는 인증, HTTPS 등등 HTTP에 기능을 추가한 프로토콜에 대한 내용을 소개한다.
저자

우에노센

저자우에노센(上野宣)은일본주식회사트라이코더의대표이사를맡고있으며보안컨설팅,취약점진단,정보보안교육을담당하고있다.

목차

제1장웹과네트워크의기본에대해알아보자
1.1웹은HTTP로나타낸다
1.2HTTP는이렇게태어났고성장했다
1.2.1웹은지식공유를위해고안되었다
1.2.2웹이성장한시대
1.2.3진보안하는HTTP
1.3네트워크의기본은TCP/IP
1.3.1TCP/IP는프로토콜의집합
1.3.2계층으로관리하는TCP/IP
1.3.3TCP/IP통신의흐름
1.4HTTP와관계가깊은프로토콜은IP/TCP/DNS
1.4.1배송을담당하는IP
1.4.2신뢰성을담당하는TCP
1.5이름해결을담당하는DNS
1.6이들과HTTP와의관계
1.7URI와URL
1.7.1URI는리소스식별자
1.7.2URL포맷

제2장.간단한프로토콜HTTP
2.1HTTP는클라이언트와서버간에통신을한다
2.2리퀘스트와리스폰스를교환하여성립
2.3HTTP는상태를유지하지않는프로토콜
2.4리퀘스트URI로리소스를식별
2.5서버에임무를부여하는HTTP메소드
2.6메소드를사용해서지시를내리다
2.7지속연결로접속량을절약
2.7.1지속연결
2.7.2파이프라인화
2.8쿠키를사용한상태관리

제3장.HTTP정보는HTTP메시지에있다
3.1HTTP메시지
3.2리퀘스트메시지와리스폰스메시지의구조
3.3인코딩으로전송효율을높이다
3.3.1메시지바디와엔티티바디의차이
3.3.2압축해서보내는콘텐츠코딩
3.3.3분해해서보내는청크전송코딩
3.4여러데이터를보내는멀티파트
3.5일부분만받는레인지리퀘스트
3.6최적의콘텐츠를돌려주는콘텐츠네고시에이션

제4장.결과를전달하는HTTP상태코드
4.1상태코드는서버로부터리퀘스트결과를전달한다
4.22xx성공(Success)
4.2.1200OK
4.2.2204NoContent
4.2.3206PartialContent
4.33xx리다이렉트(Redirection)
4.3.1301MovedPermanently
4.3.2302Found
4.3.3303SeeOther
4.3.4304NotModified
4.3.5307TemporaryRedirect
4.44xx클라이언트에러(ClientError)
4.4.1400BadRequest
4.4.2401Unauthorized
4.4.3403Forbidden
4.55xx서버에러(ServerError)
4.5.1500InternalServerError
4.5.2503ServiceUnavailable

제5장HTTP와연계하는웹서버
5.11대로멀티도메인을가능하게하는가상호스트
5.2통신을중계하는프로그램:프록시,게이트웨이,터널
5.2.1프록시
5.2.2게이트웨이
5.2.3터널
5.3리소스를보관하는캐시
5.3.1캐시는유효기간이있다
5.3.2클라이언트측에도캐시가있다

제6장HTTP헤더
6.1HTTP메시지헤더
6.2HTTP헤더필드
6.2.1HTTP헤더필드는중요한정보를전달한다
6.2.2HTTP헤더필드의구조
6.2.34종류의HTTP헤더필드
6.2.4HTTP/1.1헤더필드일람
6.2.5HTTP/1.1이외의헤더필드
6.2.6End-to-end헤더와Hop-by-hop헤더
6.3HTTP/1.1일반헤더필드
6.3.1Cache-Control
6.3.2Connection
6.3.3Date
6.3.4Pragma
6.3.5Trailer
6.3.6Transfer-Encoding
6.3.7Upgrade
6.3.8Via
6.3.9Warning
6.4리퀘스트헤더필드
6.4.1Accept
6.4.2Accept-Charset
6.4.3Accept-Encoding
6.4.4Accept-Language
6.4.5Authorization
6.4.6Expect
6.4.7From
6.4.8Host
6.4.9If-Match
6.4.10If-Modified-Since
6.4.11If-None-Match
6.4.12If-Range
6.4.13If-Unmodified-Since
6.4.14Max-Forwards
6.4.15Proxy-Authorization
6.4.16Range
6.4.17Referer
6.4.18TE
6.4.19User-Agent
6.5리스폰스헤더필드
6.5.1Accept-Ranges
6.5.2Age
6.5.3ETag
6.5.4Location
6.5.5Proxy-Authenticate
6.5.6Retry-After
6.5.7Server
6.5.8Vary
6.5.9WWW-Authenticate
6.6엔티티헤더필드
6.6.1Allow
6.6.2Content-Encoding
6.6.3Content-Language
6.6.4Content-Length
6.6.5Content-Location
6.6.6Content-MD5
6.6.7Content-Range
6.6.8Content-Type
6.6.9Expires
6.6.10Last-Midified
6.7쿠키를위한헤더필드
6.7.1Set-Cookie
6.7.2Cookie
6.8그이외의헤더필드
6.8.1X-frame-Option
6.8.2X-XSS-Protection
6.8.3DNT
6.8.4P3P

제7장웹을안전하게하는HTTPS
7.1HTTP의약점
7.1.1평문이기때문에도청가능
7.1.2통신상대를확인하지않기때문에위장가능
7.1.3완전성을증명할수없기때문에변조가능
7.2HTTP+암호화+인증+완전성보호=HTTPS
7.2.1HTTP에암호화와인증과완전성보호를더한HTTPS
7.2.2HTTPS는SSL의껍질을덮어쓴HTTP
7.2.3상호간에키를교환하는공개키암호화방식
7.2.4공개키가정확한지아닌지를증명하는증명서
7.2.5안전한통신을하는HTTPS의구조

제8장누가액세스하고있는지를확인하는인증
8.1인증이란?
8.2BASIC인증
8.2.1BASIC인증수순
8.3DIGEST인증
8.3.1DIGEST인증수순
8.4SSL클라이언트인증
8.4.1SSL클라이언트인증의인증수순
8.4.2SSL클라이언트인증은2-factor인증에서사용된다
8.4.3SSL클라이언트인증은이용하는데비용이필요하다
8.5폼베이스인증
8.5.1인증의대부분은폼베이스인증
8.5.2세션관리와쿠키에의한구현

제9장HTTP에기능을추가한프로토콜
9.1HTTP를기본으로하는프로토콜
9.2HTTP의병목현상을해소하는SPDY
9.2.1HTTP의병목현상
9.2.2SPDY설계와기능
9.2.3SPDY는웹의병목현상을해결하는가?
9.3브라우저에서양방향통신을하는WebSocket
9.3.1WebSocket의설계와기능
9.3.2WebSocket프로토콜
9.4등장이기다려지는HTTP/2.0
9.5웹서버상의파일을관리하는WebDAV
9.5.1HTTP/1.1을확장한WebDAV
9.5.2WebDAV에서추가된메소드와상태코드

제10장웹콘텐츠에서사용하는기술
10.1HTML
10.1.1대부분웹페이지는HTML로되어있다
10.1.2HTML버전
10.1.3디자인을적용하는CSS
10.2다이나믹HTML
10.2.1웹페이지를동적으로변경하는다이나믹HTML
10.2.2HTML을조작하기쉽게해주는DOM
10.3웹애플리케이션
10.3.1웹을사용해서기능을제공하는웹애플리케이션
10.3.2웹서버와프로그램을연계하는CGI
10.3.3Java에서보급된서블릿
10.4데이터송신에이용되는포맷이나언어
10.4.1범용적으로사용할수있는마크업언어XML
10.4.2갱신정보를송신하는RSS/Atom
10.4.3JavaScript에서이용하기쉽고가벼운JSON

제11장웹공격기술
11.1웹공격기술
11.1.1HTTP에는보안기능이없다
11.1.2리퀘스트는클라이언트측에서변조가능
11.1.3웹애플리케이션에대한공격패턴
11.2출력값의이스케이프미비로인한취약성
11.2.1크로스사이트스크립팅
11.2.2SQL인젝션
11.2.3OS커맨드인젝션
11.2.4HTTP헤더인젝션
11.2.5메일헤더인젝션
11.2.6디렉토리접근공격
11.2.7리모트파일인클루션
11.3웹서버의설정이나설계미비로인한취약성
11.3.1강제브라우징
11.3.2부적절한에러메시지처리
11.3.3오픈리다이렉트
11.4세션관리미비로인한취약성
11.4.1세션하이잭
11.4.2세션픽세이션
11.4.3크로스사이트리퀘스트포저리
11.5기타
11.5.1패스워드크래킹
11.5.2클릭재킹
11.5.3DoS공격
11.5.4백도어

출판사 서평

이책은웹의근간을이루는HTTP를중심으로하여웹,인터넷데이터통신분야의기초가되는내용들을다루고있습니다.관련분야를배우고자하는독자들을위해만화캐릭터와일러스트를활용하여난이도가있는내용들도부담없이쉽게보고익힐수있도록구성하였습니다.

초반부에는인터넷의역사부터시작해인터넷을하면서자주보게되는프로토콜인TCP/IP를비롯해여러프로토콜에대해설명하고있습니다.이부분은특히컴퓨터&정보통신관련학과(학부)에서가르치는전공과목중데이터통신혹은네트워크관련과목에서중요하게다루는부분입니다.

중반부에서는본격적으로HTTP에대한내용들을다루고있습니다.상태코드(스테이터스코드),리퀘스트&리스폰스헤더를비롯해프록시,게이트웨이,터널등등에대한내용들을다루고있습니다.그리고HTTPS를소개하면서서서히보안관련부분으로접어들게됩니다.

후반부에서는우리가인터넷뱅킹을이용할때자주보는인증,HTTPS등등HTTP에기능을추가한프로토콜에대한내용을소개합니다.그리고HTML,CSS,다이나믹HTML등등과웹콘텐츠를제작할때사용할수있는기술들에대한내용들을간략하게다루고있으며마지막에는웹공격기술에대한내용도소개하고있습니다.

■출판사리뷰

웹을지탱하는HTTP,그리고인터넷세계
그림으로재미있게배워보자!


최근국내IT대기업을시작으로SW개발분야및프로그래머를채용할때즉석에서주어진문제해결능력을테스트하는프로그래밍면접,이른바코딩인터뷰(CodingInterview)를도입하는사례가늘어나기시작했습니다.지원자들이숨겨진실력을직접눈으로확인하고자하기위함이기도합니다.이렇게코딩인터뷰는IT분야로진출하기위해나를시험하는장벽이지만나의실력을보여주고되돌아보면서실력을키울수있는기회이기도합니다.

이책은코딩인터뷰를대비하기위해자료구조와알고리즘분야에서중요하게다뤄지거나자주출제되는문제들을폭넓고다양하게다루고있습니다.하지만코딩인터뷰에만국한하지않고IT기술면접은물론프로그래밍경시대회까지IT분야로진출하고자하는독자들이테스트라는장벽과맞딱뜨렸을때효과적인해결법을제시할수있도록도움을주기위함이이책이태어난이유입니다.이책에서다루는모든주제를이해하려면정독해보는걸추천하는데언제든지참조하고싶은부분이나보고싶은챕터로찾아볼수있습니다.

IT취업준비생들뿐만아니라코딩인터뷰를도입하려는IT인사팀,알고리즘문제해결능력을키우고싶거나좀더효과적인해결방안을찾고자하는현업프로그래머나학생들도이책이길잡이가될것입니다.

<이책의구성>
제1장웹과네트워크의기본에대해알아보자
이장에서는웹(Web)이라는세계가어떤기술로구성되어있는지,그리고HTTP는어떻게탄생했고성장해왔는가에대해서배워봅니다.이러한배경들을알게됨으로써보다한층이해가깊어질것입니다.

제2장.간단한프로토콜HTTP
이장에서는HTTP프로토콜의구조에대해설명합니다.이번장을공부하고나면HTTP의기본에대해이해할수있을것입니다.여기서다루는HTTP는HTTP/1.1을주로다루게됩니다.

제3장.HTTP정보는HTTP메시지에있다
HTTP통신에는클라이언트에서서버로보내는리퀘스트와서버에서클라이언트로보내는리스폰스가있습니다.이번장에서는이리퀘스트와리스폰스가어떻게동작하는지살펴봅니다.

제4장.결과를전달하는HTTP상태코드
클라이언트가HTTP리퀘스트를보낸결과,즉서버가정상적으로처리되었는지아니면에러가발생했는지를알려주는게바로HTTP상태코드(스테이터스코드)입니다.이번장을통해상태코드의역할을확실히이해해봅시다.

제5장HTTP와연계하는웹서버
이장에서는HTTP와연계하는웹서버에대해배웁니다.웹서버는1대의서버에서멀티도메인으로웹사이트를실행하거나중계서버를두어통신중에효율을올릴수있습니다.

제6장HTTP헤더
웹사이트를이용할때평소에는볼수없지만HTTP의리퀘스트와리스폰스에는반드시HTTP헤더가포함되어있습니다.이번장에서는이러한HTTP헤더구조와각헤더필드의역할에대해살펴봅니다.

제7장웹을안전하게하는HTTPS
HTTP프로토콜은도청이나위장당하는보안적인문제가발생할가능성이있습니다.이번장에서는보안적인문제를방지해주는HTTPS구조에대해설명합니다.

제8장누가액세스하고있는지를확인하는인증
웹에는특정인물에게만보여주고싶은페이지나자기자신의전용페이지등이필요하게되는일이있습니다.그러기위해서필요한기능이인증입니다.이번장에서는인증의구조에대해설명합니다.

제9장HTTP에기능을추가한프로토콜
HTTP라는프로토콜은심플하고쓰기편하지만시간이흐르면서기능이부족하다고느끼는상황도생겨났습니다.그래서이번장에서는HTTP를기반으로해서새로운기능을추가한프로토콜에대해설명합니다.

제10장웹콘텐츠에서사용하는기술
웹이막등장한초기무렵에는심플한콘텐츠만있었지만,현재웹의세계에는다양한콘텐츠를송신하기위해서여러가지기술이사용되고있습니다.

제11장웹공격기술
이번장은해킹과보안과관련된이야기를다루고있습니다.인터넷상에서벌어지는공격의대부분은웹사이트를노린것입니다.그래서여기서는웹사이트공격에는어떤종류가있고어떤영향을미치는지에대해설명합니다.