๐CS49 [DB] SQL Injection ํด์ปค์ ์ํด ์กฐ์๋ SQL ์ฟผ๋ฆฌ๋ฌธ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ทธ๋๋ก ์ ๋ฌ๋์ด ๋น์ ์์ ๋ช ๋ น์ ์คํ์ํค๋ ๊ณต๊ฒฉ ๊ธฐ๋ฒ 1. ๊ณต๊ฒฉ ๋ฐฉ๋ฒ 1.1. Error based SQL Injection ๋ณดํต ๋ก๊ทธ์ธ์ ํ ๋, ์์ด๋์ ๋น๋ฐ๋ฒํธ๋ฅผ input ์ฐฝ์ ์ ๋ ฅํ๊ฒ ๋๋ค. ์์ ์ฌ์ง์์ ๋ณด์ด๋ ์ฟผ๋ฆฌ๋ฌธ์ ์ผ๋ฐ์ ์ผ๋ก ๋ก๊ทธ์ธ ์ ๋ง์ด ์ฌ์ฉ๋๋ SQL ๊ตฌ๋ฌธ์ด๋ค. ํด๋น ๊ตฌ๋ฌธ์์ ์ ๋ ฅ๊ฐ์ ๋ํ ๊ฒ์ฆ์ด ์์์ ํ์ธํ๊ณ , ์ ์์ ์ธ ์ฌ์ฉ์๊ฐ ์์์ SQL ๊ตฌ๋ฌธ์ ์ฃผ์ ํ๋ค. ์ฃผ์ ๋ ๋ด์ฉ์ ‘ OR 1=1 -- ๋ก WHERE ์ ์ ์๋ ์ฑ๊ธ์ฟผํฐ๋ฅผ ๋ซ์์ฃผ๊ธฐ ์ํ ์ฑ๊ธ์ฟผํฐ์ OR 1=1 ๋ผ๋ ๊ตฌ๋ฌธ์ ์ด์ฉํด WHERE ์ ์ ๋ชจ๋ ์ฐธ์ผ๋ก ๋ง๋ค๊ณ , -- ๋ฅผ ๋ฃ์ด์ค์ผ๋ก ๋ค์ ๊ตฌ๋ฌธ์ ๋ชจ๋ ์ฃผ์ ์ฒ๋ฆฌ ํ๋ค. ๋งค์ฐ ๊ฐ๋จํ ๊ตฌ๋ฌธ์ด์ง๋ง, ๊ฒฐ๋ก ์ ์ผ๋ก Users ํ ์ด๋ธ.. 2021. 10. 13. [OS] ํ์ด์ง ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ ํ์ด์ง ๋ถ์ฌ ๋ฐ์ → ์๋ก์ด ํ์ด์ง๋ฅผ ํ ๋นํด์ผ ํจ → ํ์ฌ ํ ๋น๋ ํ์ด์ง ์ค ์ด๋ค ๊ฒ ๊ต์ฒดํ ์ง ๊ฒฐ์ ํ๋ ๋ฐฉ๋ฒ Demanding Paging์ ์๊ตฌ๋์ด์ง๋ ํ์ด์ง๋ง backing store์์ ๊ฐ์ ธ์จ๋ค. ํ์ง๋ง ํ๋ก๊ทธ๋จ๋ค์ด ๊ณ์ ์คํํจ์ ๋ฐ๋ผ ์๊ตฌ ํ์ด์ง๋ ๊ณ์ ๋์ด๋๊ณ , ์ธ์ ๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๊ฐ๋ ์ฐจ๊ฒ ๋ ๊ฒ์ด๋ค.(memory full) ์ฌ๊ธฐ์ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ด ์๋ก ์คํ๋๊ฑฐ๋ ์คํ์ค์ธ ํ๋ก์ธ์ค๊ฐ ๋ค๋ฅธ ํ์ด์ง๋ฅผ ์๊ตฌํ๋ค๋ฉด ์ด๋ฏธ ๋ฉ๋ชจ๋ฆฌ์ ์๋ ํ์ด์ง ์ค ํ๋๋ฅผ ๋ค์ backing store์ ๋ณด๋ด๊ณ (page-out), ์๋ก์ด ํ์ด์ง๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ ค์ผํ๋ค.(page-in) ์ด๋ฅผ ํ์ด์ง ๊ต์ฒด๋ผ๊ณ ํ๋ค. ์ฌ๊ธฐ์ backing store๋ก page-out์ด ๋ ํ์ด์ง๋ฅผ victim page๋ผ๊ณ ํ๋ค. ์๊ตฌ ํ์ด์ง(D.. 2021. 10. 13. [OS] ํ์ด์ง & ์ธ๊ทธ๋จผํ ์ด์ Paging vs Segmentation ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๋ ๊ธฐ๋ฒ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋๋ ์ฆ, ์คํ์ค์ธ ํ๋ก์ธ์ค๊ฐ ๊ฐ์์ ๊ณต๊ฐ์ ์ฐธ์กฐํ์ฌ ๋ง์น ์ปค๋ค๋ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ๊ณ ์๋ ๊ฒ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ ๊ฒ์ด๋ค. ๊ฐ๋จํ๊ฒ ๋งํด ์ค์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ ์๋ ๊ฐ์์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ฃผ๋ ๋ฐฉ์์ด๋ค. ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ ๊ฐ ํ๋ก์ธ์ค๋น ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๋์ผํ ํฌ๊ธฐ๋ก ํ๋์ฉ ํ ๋น๋๋ค. ๊ทธ ๊ณต๊ฐ์ ๋ณด์กฐ๊ธฐ์ต์ฅ์น ๊ณต๊ฐ์ ์ด์ฉํ๋ค. ํ๋ก์ธ์ค์ ์ผ๋ถ๋ง ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋ํ๊ณ ๋๋จธ์ง๋ ๋ณด์กฐ๊ธฐ์ต์ฅ์น์ ๋๋ ํํ์ด๋ค. ์ด๋ ๊ฒ ํ ๋น๋๋ฉด ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์ฅ์น(MMU : memory management unit)์ ์ํด ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋ณํ๋์ด ์ฌ์ฉ์๊ฐ ๋ฉ๋ชจ๋ฆฌ ๋งตํ์ด ์ด๋ป๊ฒ ๋๋์ง ์์ํ ํ์ ์์ด ์์์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํ์ฌ ์์ ํ๋ค. ๋ด๋ถ .. 2021. 10. 13. [Web] Stateful vs. Stateless ์๋น์ค 1. Stateful Service Stateful '๊ตฌ์กฐ'๋ Server์ Client๊ฐ ์ธ์ ์ 'State(์ํ)'์ ๊ธฐ๋ฐํ์ฌ Client์ response๋ฅผ ๋ณด๋ ๋๋ค. ์ด๋ฅผ ์ํด ์๋ฒ ์ฌ์ด๋์ 'ํด๋ผ์ด์ธํธ์ ์๋ฒ์ ๋์, ์ธ์ ์ํ ์ ๋ณด'๋ฅผ ์ ์ฅํ๋ค. TCP ๋ํ์ ์ธ Stateful ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ฅด๋ ํ๋กํ ์ฝ๋ก TCP๊ฐ ์๋ค. TCP์ 3-way handshaking ๊ณผ์ ์ ์๊ฐํด๋ณด๋ฉด, Server์ Client๋ 3-way handshaking ๊ณผ์ ์์ SYN๊ณผ SYNACK์ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ, ์๋จ๊ฐ ์ธ์ '์ํ'๋ฅผ establishedํ '์ํ'๋ก ๋ง๋ ๋ค. ์ธ์ '์ํ'๊ฐ established๊ฐ ๋๋ฉด client์ server๋ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ค. ์ด๋ ๊ฒ TCP๋ ์ธ์ '์ํ'์ ๋ฐ๋ผ Ser.. 2021. 9. 26. [Network] OSI 7๊ณ์ธต OSI 7๊ณ์ธต Open System Intercon-nection ์์คํ ์ํธ ์ฐ๊ฒฐ์ ์์ด ๊ฐ๋ฐฉ(์ด๋ ค์๋ค, ํ์ค)๋ชจ๋ธ์ ๋ปํ๋ค ์ค์ ์ธํฐ๋ท์์ ์ฌ์ฉ๋๋ TCP/IP OSI ์ฐธ์กฐ ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ์์ ์ ์ด๊ณ ์ค๋ฌด์ ์ผ๋ก ์ด์ฉ๋ ์ ์๋๋ก ๋จ์ํ๋ ํ์คํ์ ๊ณผ์ ์์ ์ฑํ๋ ๋ชจํ 7๊ณ์ธต์ ์ ๋๋๊น? ํ์ค๊ณผ ํ์ต๋๊ตฌ ํ์คํ๋ฅผ ํตํด ์ฅ๋น๋ณ ํฌํธ, ํ๋กํ ์ฝ์ ๊ตฌ๋ณ OSI ๊ณ์ธต๋ณ ๊ธฐ๋ฅ๊ณผ ํต์ ์ ๊ณผ์ ์ ์ ๋ฆฝํ์ฌ ๊ต์กํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ ํต์ ์ด ์ผ์ด๋๋ ๊ณผ์ ์ ๋จ๊ณ๋ณ๋ก ์ ์ ์๊ณ , ํน์ ํ ๊ณณ์ ์ด์์ด ์๊ธฐ๋ฉด ๊ทธ ๋จ๊ณ๋ง ์์ ํ ์ ์๋ค ์บก์ํ & ์ญ์บก์ํ ์บก์ํ(Encapsulation) ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋ ๊ฐ๊ฐ์ ๋ ์ด๋ง๋ค ์ธ์ํ ์ ์๋ ํค๋๋ฅผ ๋ถ์ด๋ ๊ณผ์ 2๊ณ์ธต(Data layer, ๋ฐ์ดํฐ๋งํฌ๊ณ์ธต)์์๋ ์ค๋ฅ์ ์ด๋ฅผ.. 2021. 9. 9. [DB] NoSQL NoSQL์ ์ด๊ณ ์ฉ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฑ ์ฑ๋ฅ์ ํนํ๋ ๋ชฉ์ ์ ์ํด, ๋น๊ด๊ณํ ๋ฐ์ดํฐ ์ ์ฅ์์, ๋น๊ตฌ์กฐ์ ์ธ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ๋ถ์ฐ ์ ์ฅ ์์คํ ์ด๋ค. NoSQL NoSQL์ด ๋ฌด์์ ์ฝ์์ธ์ง๋ ์ฌ๋์ ๋ฐ๋ผ No SQL, Not Only SQL, Non-Relational Operational Database SQL๋ก ์๊ฐ๋ฆฌ๋ ์๊ฒฌ๋ค์ด ์์ง๋ง, ํ์ฌ Not Only SQL๋ก ํ์ด ์ค๋ช ํ๋ ๊ฒ์ด ๋ค์๋ฅผ ์ฐจ์งํ๊ณ ์๋ค. ์ด ๋ง์ ์๋ฏธ๋ฅผ ํ์ด๋ณด๋ฉด, ๋จ์ํ ๊ธฐ์กด ๊ด๊ณํ DBMS๊ฐ ๊ฐ๊ณ ์๋ ํน์ฑ๋ฟ๋ง ์๋๋ผ, ๋ค๋ฅธ ํน์ฑ๋ค์ ๋ถ๊ฐ์ ์ผ๋ก ์ง์ํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ฌ์ฉํด์ผ ํ๋ ์ด์ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ํ์ํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๊ธฐ ์ํ์ฌ ์ ์ฐ์ฑ๊ณผ ํ์ฅ์ฑ์ ๋น๋กฏํด ๊ณ ์ฑ๋ฅ์ ๋งค์ฐ ๊ธฐ๋ฅ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํ์๋ก ํ๋ .. 2021. 9. 9. [Network] ์น ํต์ ์ ํฐ ํ๋ฆ ์น ํต์ ์ ๊ณผ์ ์ฌ์ฉ์๊ฐ ์น ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด URL์ ์ ๋ ฅํ๋ค ์ ๋ ฅ๋ URL ์ค ๋๋ฉ์ธ ๋ค์์ DNS ์๋ฒ์์ ๊ฒ์ํ๋ค DNS ์๋ฒ์์ ํด๋น ๋๋ฉ์ธ ๋ค์์ ํด๋นํ๋ IP ์ฃผ์๋ฅผ ์ฐพ์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ URL ์ ๋ณด์ ํจ๊ป ์ ๋ฌํ๋ค ์น ํ์ด์ง URL ์ ๋ณด์ ์ ๋ฌ๋ฐ์ IP ์ฃผ์๋ฅผ ์ด์ฉํด HTTP ์์ฒญ ๋ฉ์์ง๋ฅผ ์์ฑํ๋ค ์์ฒญ์ TCP๋ฅผ ํตํด ์๋ฒ๋ก ์ ์ก๋๋ค HTTP ์์ฒญ ๋ฉ์์ง๋ HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์น ํ์ด์ง URL ์ ๋ณด๋ก ๋ณํ๋์ด ์๋ฒ์ ์ ์ก๋๋ค ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ฐ๊ณ ์๋ต์ ์ ์กํ๋ค ์น ํ์ด์ง URL ์ ๋ณด์ ํด๋นํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๊ณ , HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ HTTP ์๋ต ๋ฉ์์ง๋ฅผ ์์ฑํ๊ณ TCP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์ธํฐ๋ท์ ๊ฑฐ์ณ ์๋ ์ปดํจํฐ๋ก ์ ์ก๋๋ค ๋์ฐฉํ HTTP ์๋ต ๋ฉ์์ง๋ H.. 2021. 8. 31. [OS] ์์คํ ํธ์ถ(System Calls) ์์คํ ํธ์ถ(System Calls) ์ด์์ฒด์ ๋ ์ปค๋ ๋ชจ๋(Kernel Mode)์ ์ฌ์ฉ์ ๋ชจ๋(User Mode)๋ก ๋๋์ด ๊ตฌ๋๋๋ค. ์ด์์ฒด์ ์์ ํ๋ก๊ทธ๋จ์ด ๊ตฌ๋๋๋๋ฐ ์์ด ํ์ผ์ ์ฝ์ด ์ค๊ฑฐ๋, ํ์ผ์ ์ฐ๊ฑฐ๋, ํน์ ํ๋ฉด์ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ๋ ๋ฑ ๋ง์ ๋ถ๋ถ์ด ์ปค๋ ๋ชจ๋๋ฅผ ์ฌ์ฉํ๋ค. OS๋ ๋ค์ํ ์๋น์ค๋ค์ ์ํํ๊ธฐ ์ํด ํ๋์จ์ด๋ฅผ ์ง์ ์ ์ผ๋ก ๊ด๋ฆฌํ๋ค. ์ด์ ๋ฐ๋ฉด ์์ฉ ํ๋ก๊ทธ๋จ์ OS๊ฐ ์ ๊ณตํ๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด์๋ง ์์์ ์ฌ์ฉํ ์ ์๋ค. OS๊ฐ ์ ๊ณตํ๋ ์ด๋ฌํ ์ธํฐํ์ด์ค๋ฅผ ์์คํ ์ฝ(System Call) ๋ผ๊ณ ํ๋ค. ์์คํ ์ฝ์ ์ด๋ฌํ ์ปค๋ ์์ญ์ ๊ธฐ๋ฅ์ ์ฌ์ฉ์ ๋ชจ๋๊ฐ ์ฌ์ฉ ๊ฐ๋ฅํ๊ฒ, ์ฆ ํ๋ก์ธ์ค๊ฐ ํ๋์จ์ด์ ์ง์ ์ ๊ทผํด์ ํ์ํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๊ฒ ํด์ค๋ค. ์์คํ ์ฝ์ ํธํ๊ฒ ์ฌ์ฉํ๊ธฐ ์ํ ์๋จ.. 2021. 8. 31. [Network] DNS round robin HTTP ํต์ ์์๋ ํญ์ฃผํ๋ ๋ถํ๋ฅผ ๋ถ์ฐํ๊ธฐ ์ํด DNS ๋ผ์ด๋ ๋ก๋น๊ฐ์ ๋ก๋ ๋ฐธ๋ฐ์ฑ ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ค. ์๋ฒ๊ฐ ๋ ๋ ์ด์์ผ๋ก ๋ก๋ ๋ฐธ๋ฐ์ฑ์ด ๋๋ฉด ํด๋ผ์ด์ธํธ๊ฐ ์ด์ ์ ์ ์ํ๋ ์๋ฒ์ ๋ค์ ์ ์ํ๋ค๊ณ ๋ฐ๋์ ๋ณด์ฅํ ์ ์๊ธฐ ๋๋ฌธ์ ํด๋ผ์ด์ธํธ๊ฐ ์์ ์์ฒญ์ ๋ณด๋ธ ์น ์๋ฒ์ ์ง์์ ์ผ๋ก ์์ฒญ์ ๋ณด๋ผ ์ ์๋๋ก ๋ง๋๋ ค๋ฉด HTTP์ ์ฟ ํค(cookie)๋ ํต์ผ๋ผ์ด๋ธ(keep alive)๋ผ๋ ๊ธฐ์ ์ ์ฌ์ฉํด์ผ ํ๋ค. DNS ๋๋ฉ์ธ๊ณผ IP ์ฃผ์ ์ฌ์ด์ ๋ณํ ๊ธฐ๋ฅ์ ํด์ฃผ๋ ๊ฒ์ด DNS(Domain Name System)์ด๋ค. ์ ๋ฐฉํฅ ์กฐํ : ๋๋ฉ์ธ์ผ๋ก IP ์ฃผ์๋ฅผ ์์๋ด๋ ๊ฒ ์ญ๋ฐฉํฅ ์กฐํ : IP ์ฃผ์๋ฅผ ์ฌ์ฉํด์ ๋๋ฉ์ธ์ ์์๋ด๋ ๊ฒ ํด๋ผ์ฐ๋ ํ๊ฒฝ์์๋ ์ฃผ๋ก ์ ๋ฐฉํฅ ์กฐํ๊ฐ ๋ง์ด ์ฌ์ฉ๋๋ค. DNS round robin IP .. 2021. 8. 25. ์ด์ 1 2 3 4 ยทยทยท 6 ๋ค์