오늘 끝나면
화이트해킹이란
- ✓화이트해킹이란의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 화이트해킹이란이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
허가받은 침투 — 공격자처럼 생각해 먼저 막는 일 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
화이트해킹 · 01
화이트
해킹이란
허가받은 침투로 약점을 먼저 찾아 막는 일임.
공격자처럼 생각하되 — 부수려는 게 아니라 지키려는 것임.
전제는 단 하나, 명시적 허가임. 없으면 범죄임.
허가받고 먼저 부수는 사람
해킹 하면 검은 후드티에 불법이 떠오름. 화이트해킹은 정반대 자리에 있음.
화이트해커는 시스템 주인에게 허락을 받고 일부러 침투함.
공격자가 들어오기 전에 약점을 먼저 찾아 보고하고 막게 하는 일임.
침투 시험(펜테스트)·버그 바운티가 다 이쪽임.
행위 자체는 공격자와 닮았음. 가르는 건 딱 하나임.
허가가 있으면 방어 · 없으면 범죄임.
그래서 화이트해킹은 기술이기 전에 약속에서 시작함.
시스템 침투
+ 주인의 서면 동의
시스템 침투
+ 동의 없음
화이트 · 블랙 · 그레이
해커를 모자 색으로 나눔. 기준은 능력이 아니라 허가와 의도임.
화이트는 허가받고 약점을 찾아 알려줌 / 방어 편임.
블랙은 허가 없이 침투해 이득을 챙김 / 범죄임.
그레이는 허락 없이 뚫지만 알려는 줌 / 선의여도 불법일 수 있음.
같은 취약점을 찾아도 갈림길은 그 다음임.
주인에게 보고하고 고치게 하면 화이트 · 몰래 쓰거나 팔면 블랙임.
이 코스가 가는 길은 처음부터 끝까지 화이트임.
찾아서 알려줌
뚫고서 알려줌
뚫어서 챙김
지키는 것 셋 — CIA
공격을 막는다는 건 막연함. 무엇을 지키는지부터 셋으로 못박음.
보안 3요소는 CIA임.
기밀성(Confidentiality) — 볼 사람만 봄.
무결성(Integrity) — 함부로 못 바꿈.
가용성(Availability) — 필요할 때 살아 있음.
공격은 이 셋 중 하나를 깨는 일임.
유출은 기밀을 · 위변조는 무결성을 · 서비스 마비는 가용성을 깸.
그래서 약점을 볼 땐 물음. 이건 셋 중 무엇을 무너뜨리나?
볼 사람만 봄
함부로 못 바꿈
필요할 때 살아 있음
공격 = 이 셋 중 하나를 무너뜨리기
공격 표면을 직접 더듬다
공격자는 코드부터 짜지 않음. 먼저 데이터가 어디로 들어가나를 셈.
오른쪽에서 직접 해봄.
시스템 그림의 입력점(로그인·검색·업로드·API·관리자)을 누르면 그 문의 잠재 위험과 방어책이 같이 뜸.
데이터가 들어오는 문 하나하나가 공격 표면임.
표면이 넓을수록 지킬 게 많아짐 / 그래서 안 쓰는 문은 닫는 게 방어의 시작임.
여기선 실제 공격 없이 개념만 더듬어 봄.
공격자는 코드부터 짜지 않음. 먼저 데이터가 어디로 들어가나를 셈. 그 문 하나하나가 공격 표면임. 위에서 문을 눌러 보셈.
취약점과 익스플로잇
앞으로 가장 많이 들을 두 단어임. 헷갈리는데 짝으로 외우면 쉬움.
취약점(vulnerability)은 시스템의 약점 그 자체임.
잠기지 않은 창문 같은 것 — 있어도 아직 아무 일도 안 일어남.
익스플로잇(exploit)은 그 약점을 실제로 이용하는 기법임.
창문으로 손 넣어 문을 여는 동작 — 약점을 사고로 바꾸는 순간임.
방어는 둘 다를 봄.
취약점을 찾아 미리 메우고(패치) · 익스플로잇이 통해도 피해를 줄이게(완화) 막음.
화이트해커는 익스플로잇이 도는 걸 보여줘서, 패치를 서두르게 만드는 사람임.
Q. 화이트해킹이 합법이 되려면 반드시 있어야 하는 전제는?
정답은 명시적 허가와 범위(scope)임.주인의 허락, 그리고 어디까지 건드려도 되는지 정한 범위가 있어야 함.
이게 없으면 선의로 약점을 찾았더라도 침투 자체가 범죄임.
능력·의도가 아니라 허가가 화이트와 블랙을 가름.
잠기지 않은 창문
있어도 아직 아무 일 없음
창문으로 손 넣어 문 열기
약점을 사고로 바꾸는 동작
창문 잠그기(패치) + 들어와도 금고 따로 잠그기(완화)