iOS ์ฑ ๋คํธ์ํฌ ํธ๋ํน
0. ๋ค์ด๊ฐ๋ฉฐ
iOS ์ฑ๋ค์ ๋ณด๋ค ๋ณด๋ฉด ์ด๋ค ์ฑ์์ ์ด๋ค ๋คํธ์ํฌ ์์ฒญ์ ์ฃผ๊ณ ๋ฐ๋์ง ๊ถ๊ธํ ๋๊ฐ ์๋ค. ์ด๋ด ๋, Charles Proxy๋ผ๋ ๋คํธ์ํฌ ์ค๋ํ(sniffing) ๋๊ตฌ๋ฅผ ํ์ฉํ๋ฉด ๊ฐ๋จํ๊ฒ ํ์ธํ ์ ์๋ค.
1. ์ค๋น์ฌํญ
1-1. Charles Proxy ์ค์น
์ปดํจํฐ์ ์ต์ ๋ฒ์ ์ Charles Proxy๋ฅผ ์ค์นํ๋ค. 30์ผ ๋ฌด๋ฃ ํ๊ฐํ์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ์ดํ์๋ $50์ ์ง๋ถํ๊ณ ์ฌ์ฉํด์ผ ํ๋ค. ๋ ํ๊ฐํ ๊ธฐ๊ฐ์๋ ์ธ์ ๋น 30๋ถ์ ์๊ฐ ์ ํ์ด ์๋ค.
1-2. iPhone ์์ดํ์ด ์ค์ ๋ณ๊ฒฝ
์ปดํจํฐ์ ๋์ผํ Wi-Fi ๋คํธ์ํฌ์ ์ฐ๊ฒฐ๋ iPhone์ ์ค๋นํ๋ค. iPhone์ ์ค์ ์ ๋ค์ด๊ฐ Wi-Fi > ํด๋น ๋คํธ์ํฌ ์ ๐์ ๋๋ฅด๊ณ ๋งจ ๋ฐ์ผ๋ก ๋ด๋ฆฌ๋ฉด Configure Proxy(ํ๋ก์ ๊ตฌ์ฑ)์ด ์์ ๊ฒ์ด๋ค. Manual๋ก ๋ฐ๊ฟ์ฃผ๊ณ Server๋ ์ปดํจํฐ์ IP ์ฃผ์, Port๋ 8888๋ก ์ค์ ํ๋ค. ์ปดํจํฐ์ IP ์ฃผ์๋ฅผ ์์๋ด๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
- Windows:
Command Prompt๋ฅผ ์ด๊ณipconfig๋ฅผ ์ ๋ ฅํ๋ฉด ๋์ค๋ IPv4 ์ฃผ์ - Mac:
System Preferences > Wi-Fi์ ๋ค์ด๊ฐ ํด๋น ๋คํธ์ํฌ ์Details๋ฅผ ๋๋ฅด๋ฉด ๋์ค๋ IP ์ฃผ์
1-4. SSL ์ธ์ฆ์ ์ค์น
iPhone์ Safari์์ SSL ์ธ์ฆ์๋ฅผ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํ๋ค. ์ดํ iPhone์ ์ค์ ์ ๋ค์ด๊ฐ ์๋ ๊ฒฝ๋ก์์ Charles Proxy์ ์ธ์ฆ์๋ฅผ ํ์ฑํํ๋ค.
- ์๋ฌธ:
General > About > Certificate Trust Settings > Enable Full Trust for Root Certificates - ํ๊ธ:
์ผ๋ฐ > ์ ๋ณด > ์ธ์ฆ์ ์ ๋ขฐ ์ค์ > ๋ฃจํธ ์ธ์ฆ์ ์ ์ฒด ์ ๋ขฐ ํ์ฑํ
2. Charles ์คํ ๋ฐ ์ค์
2-1. SSL Proxying ์ค์
Charles๋ฅผ ์คํํ๊ณ Proxy > SSL Proxying Settings์ ๋ค์ด๊ฐ์ Enable SSL Proxying์ ์ฒดํฌํ๋ค. ์ดํ Add๋ฅผ ๋๋ฌ Host์ *๋ฅผ ์
๋ ฅํ๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ชจ๋ ๋๋ฉ์ธ์ผ๋ก ๋ค์ด์ค๋ SSL ํธ๋ํฝ์ Charles๊ฐ ์ค๋ํํ ์ ์๋ค.
2-2. ํจํท ๋ถ์
์ด์ ์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ์ฑ์์ ํน์ ๋์์ ์ํํ๋ฉด ๋ฐ์ํ๋ JSON Request์ ๋ด์ฉ์ ๋ณผ ์ ์๋ค. ์ด๋ฌํ ๋คํธ์ํฌ ํธ๋ํน์ ์ธ๋ถ์ ๊ณต๊ฐ ์ ๋ฌธ์ ์ ์์ง๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ํฌ๋ฏ๋ก, ๋๋ถ๋ถ์ ์ ๋ณด๋ฅผ ๋ธ๋ฌ ์ฒ๋ฆฌํ๊ณ ์ฌ๋ฆฌ๋ ์ ์ํด ๋ฐ๋๋ค. ์ด์ฒ๋ผ ์์ ์ ์ผ๋ก ์ด์ฉ๋๋ ์ฑ์ ๋ํด์ ๋คํธ์ํฌ ํจํท ๋ถ์์ ๊ฐ์ธ์ ์ธ ์ฉ๋๋ก๋ง ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค.