๐ ์ทจ์ฝ์ : ๋ฐฑ๊ทธ๋ผ์ด๋ ์ค๋ ์ท ๋ฐ ํ๋ฉด ์บก์ฒ๋ฅผ ํตํ ๋ฏผ๊ฐ ์ ๋ณด ๋ ธ์ถ
OWASP Mobile ๋ถ๋ฅ:
M6:2024 – Inadequate Privacy Controls (๋ถ์ ์ ํ ๊ฐ์ธ์ ๋ณด ์ ์ด)
์ฑ์ด ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์ ํ๋ ๋ ์์ฑ๋๋ ์์คํ ์ค๋ ์ท์ด๋ ์ฌ์ฉ์์ ํ๋ฉด ์บก์ฒ ํ์์ ๋ํด ์ ์ ํ ๋ณด์ ํต์ ๋ฅผ ์ ์ฉํ์ง ์์ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ๊ฐ ๊ธฐ๊ธฐ ๋ด์ ์ ์ฅ๋๊ฑฐ๋ ๋ ธ์ถ๋๋ ์ํ์ ๋๋ค.
์์ธ:
- Lack of Screen Obfuscation: ์ฑ์ด ๋ฐฑ๊ทธ๋ผ์ด๋ ์ํ(Background State)๋ก ์ ํ๋ ๋ ํ๋ฉด์ ๊ฐ๋ฆฌ๋ ๋ธ๋ฌ(Blur) ์ฒ๋ฆฌ๋ ๋ง์คํน ๋ก์ง์ด ๋ถ์ฌํจ.
- Insecure System Flag Configuration: ์ด์์ฒด์ (Android/iOS)์์ ์ ๊ณตํ๋ ํ๋ฉด ์บก์ฒ ๋ฐฉ์ง ๋ณด์ ํ๋๊ทธ๊ฐ ๋นํ์ฑํ๋์ด ์์.
- Automatic Snapshot Storage: ๋ชจ๋ฐ์ผ OS์ ๋ฉํฐํ์คํน ๊ธฐ๋ฅ์ ์ํด ์์ฑ๋ ์ค๋ ์ท ํ์ผ์ด ์ํธํ๋์ง ์์ ์์ญ์ ์ด๋ฏธ์ง ํํ๋ก ์ ์ฅ๋จ.
๐ ์ค๋ช
“ํ์๊ฐ ์ฑ ๋ด์์ ์ง๋ฃ ๋ด์ญ, ์ฒ๋ฐฉ์ , ์ฑ๋ณ ๊ฒ์ฌ ๊ฒฐ๊ณผ ๋ฑ ๋ฏผ๊ฐํ ์๋ฃ ์ ๋ณด๋ฅผ ํ์ธํ๋ ์ค ์ฑ์ ์ข ๋ฃํ์ง ์๊ณ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์ ํํ ๊ฒฝ์ฐ, OS๊ฐ ํด๋น ํ๋ฉด์ ์ด๋ฏธ์ง๋ก ์บก์ฒํ์ฌ ์ ์ฅํจ. ์ด ์ด๋ฏธ์ง๋ ๋ฉํฐํ์คํน ํ๋ฉด(App Switcher)์์ ๋๊ตฌ๋ ๋ณผ ์ ์์ผ๋ฉฐ, ๊ธฐ๊ธฐ ํ์ทจ ์ ๊ฐ์ธ์ ๋ณ๋ ฅ์ด ์ธ๋ถ์ ๊ทธ๋๋ก ๋ ธ์ถ๋จ”
๐ ๋ ธ์ถ ๋ฐ์ดํฐ ์์
- ์ง๋ฃ ๊ณผ๋ชฉ: (์: ์ ์ ๊ฑด๊ฐ์ํ๊ณผ, ์ฐ๋ถ์ธ๊ณผ, ๋น๋จ์ํ๊ณผ ๋ฑ)
- ์์ธ ๋ด์ญ: ํ์ ๋ณธ์ธ์ ํฌ์ฝ ์ ๋ณด ๋ฐ ์ง๋ณ ๋ถ๋ฅ ์ฝ๋
- ๊ฐ์ธ ์๋ณ ์ ๋ณด: ํ์ ๋ฑ๋ก ๋ฒํธ, ์๋ ์์ผ, ์์ฝ ์ผ์
๐ฅ ๋ณด์ ์ํฅ
- ๋ฏผ๊ฐ ์ฌ์ํ ์นจํด: ๊ฐ์ธ์ ๋ณ๋ ฅ ์ ๋ณด๊ฐ ์๋์น ์๊ฒ ์ฃผ๋ณ์ธ์ด๋ ์ 3์์๊ฒ ๋ ธ์ถ๋จ.
- ๊ฐ์ธ์ ๋ณด๋ณดํธ๋ฒ ์๋ฐ: ์๋ฃ๋ฒ ๋ฐ ๊ฐ์ธ์ ๋ณด๋ณดํธ๋ฒ์ ์๊ตฌ๋๋ '๋ฏผ๊ฐ ์ ๋ณด์ ๋ํ ๊ธฐ์ ์ ๋ณดํธ ์กฐ์น' ๋ฏธํก.
- 2์ฐจ ํผํด ๋ฐ์: ๋ ธ์ถ๋ ์์ฝ ์ ๋ณด๋ฅผ ์ด์ฉํ ํผ์ฑ ๊ณต๊ฒฉ์ด๋ ์ฌํ๊ณตํ์ ๊ธฐ๋ฒ์ ์ ์ฉ๋ ๊ฐ๋ฅ์ฑ.
๐ ๏ธ ๋์ ๋ฐฉ์
- ํ๋ฉด ์บก์ฒ ๋ฐฉ์ง ํ๋๊ทธ ์ค์ : * (Android) WindowManager.LayoutParams.FLAG_SECURE๋ฅผ ์ ์ฉํ์ฌ ์บก์ฒ ๋ฐ ์ค๋ ์ท ์์ฑ์ ์์ฒ ์ฐจ๋จ.
- Background ๋ง์คํน ๊ตฌํ:
- (iOS) applicationWillResignActive ํธ์ถ ์์ ์ UIImageView ๋ฑ์ ํ์ฉํ์ฌ ํ๋ฉด์ ํ์ฌ ๋ก๊ณ ๋ ๋ธ๋ฌ ์ด๋ฏธ์ง๋ก ๋ฎ์.
- ๋ฏผ๊ฐ ํ์ด์ง ์ง์ ์ ์ฌ์ธ์ฆ: ์ง๋ฃ ๊ฒฐ๊ณผ ๋ฑ ๊ณ ์ํ ์ ๋ณด ์ด๋ ์ ์์ฒด ์ธ์(FaceID/Fingerprint)์ ํตํ ์ฌ์ธ์ฆ ๊ฐ์ .
