XSS 공격과 방어의 기본
XSS는 공격자의 스크립트를 피해자의 브라우저에서 실행시키는 공격이다. - 저장형 : 서버 DB에 스크립트가 저장돼 다른 사용자에게 전달 - 반사형 : URL 파라미터가 그대로 페이지에 반영 - DOM 기반 : 클라이언트 JS가 신뢰할 수 없는 값을…
7개
XSS는 공격자의 스크립트를 피해자의 브라우저에서 실행시키는 공격이다. - 저장형 : 서버 DB에 스크립트가 저장돼 다른 사용자에게 전달 - 반사형 : URL 파라미터가 그대로 페이지에 반영 - DOM 기반 : 클라이언트 JS가 신뢰할 수 없는 값을…
수십 년 된 취약점이지만 아직도 터진다. 원인은 항상 같다. 쿼리에 사용자 입력을 문자열로 이어붙이는 것. 1. 항상 파라미터 바인딩 (prepared statement) 2. ORM을 쓰되 raw 쿼리 조립을 경계 3. DB 계정에 최소 권한만 부여…
CSRF는 로그인된 사용자의 브라우저를 이용해 의도하지 않은 요청 을 보내게 만드는 공격이다. 브라우저는 요청 대상 도메인의 쿠키를 자동으로 붙인다. 공격자 사이트가 몰래 폼을 제출해도 피해자의 세션 쿠키가 함께 간다. - CSRF 토큰 : 서버가 발…
리버싱 입문의 문턱을 크게 낮춘 도구가 Ghidra 다. 무료인데 디컴파일러까지 준다. 1. 바이너리를 프로젝트에 임포트 2. 자동 분석 실행 3. main 을 찾아 디컴파일 창에서 C 유사 코드 확인 - 함수·변수 이름을 계속 고쳐 붙이며 의미를 채…
어셈블리를 읽으려면 스택 프레임의 구조가 눈에 들어와야 한다. - [rbp-0x8] 류는 보통 지역 변수 - [rbp+0x10] 류는 넘어온 인자 (호출 규약에 따라) - 프롤로그/에필로그는 함수의 경계를 알려주는 표지판 x86-64 System V는…
TCP 연결은 세 번의 인사 로 시작한다. 1. 클라이언트 → 서버: SYN (초기 시퀀스 번호 x) 2. 서버 → 클라이언트: SYN-ACK (y, x+1 확인) 3. 클라이언트 → 서버: ACK (y+1 확인) 양쪽 모두 상대가 내 시퀀스 번호를…
HTTPS의 S는 TLS다. TLS는 기밀성·무결성·인증 을 동시에 제공한다. 비대칭 암호(RSA/ECDHE)로 안전하게 세션 키 를 교환한 뒤, 실제 데이터는 빠른 대칭 암호(AES)로 주고받는다. 비대칭만 쓰기엔 너무 느리기 때문이다. 서버는 CA…
소셜 계정으로 바로 시작할 수 있습니다.