250x250
반응형
Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

개발자라면 한번쯤은 보러오는 곳

[Information System Security] Web Security 1 본문

학교 수업/Information System Security

[Information System Security] Web Security 1

okpyo11 2022. 12. 9. 22:46
728x90
반응형

Web

- Client/server model on TCP/IP
-> client: browser that requests, receives, “displays” Web objects
- > server: Web server sends objects in response to requests

- Stateless protocol

- HTTP 1.1: RFC 2068

Web Shell

- 웹 서버가 유저에게 실행파일을 업로드를 허용할때 취약점

 -> 파일 업로드, 지원서 업로드,...

- 해커는 시스템 명령을 실행합니다. 마치 텔넷으로 로그인한 것처럼 강력합니다.

 

대책

- 파일 업로드 금지가 안된다면

- 특정 확장자/크키 확인

- 확장자 명 제한

- 실행 권한 삭제

- root 권한으로 가지고 있직 삭제

secure OS -> root 보다 높은 권한 OS

 

Cookie

- 사용자의 웹 브라우저에 저장된 텍스트 조각

- 웹 서버가 선택한 임의의 데이터 조각 브라우저로 전송

– 브라우저는 변경되지 않은 상태로 서버에 반환하고, 상태 소개(이전 이벤트의 기억) HTTP 트랜잭션으로 다른 상태 비저장

– 쿠키가 없으면 웹 페이지 또는 웹 페이지의 구성 요소는 격리된 이벤트입니다.

- SSL로 보호되지 않으면 공격자가 쿠키를 읽고 조작할 수 있음(성능상의 이유로 많은 사이트에서 로그인 프로세스를 제외한 모든 파일에 SSL을 적용하지 않음)

- "cookie name=value"를 제외한 쿠키 속성이 표시되지 않음 고객은 임의로 쿠키를 조작할 수 있습니다.

- 중요한 정보는 쿠키에 저장하면 안 됩니다.

 

대책

- 브라우징 후 설정/쓰기 차단, 쿠키 삭제
– 모든 페이지에 대한 SSL
– 암호화 체크섬 : 무결성 -> server key K

 

Session management

- 세션 정보는 웹에 저장됩니다.
- 세션 식별자(세션 ID)를 사용하는 서버
– 세션 ID 및 관련 항목의 "저장소"
- 웹 서버의 세션 데이터(사용자 이름, 계정 번호 등)는 로컬 메모리, 플랫 파일 및 데이터베이스를 포함하되 이에 국한되지 않는 다양한 기술을 사용하여 수행됩니다.

Session ex)

1. Browse cookie

2. Embedded in all URL links

3. Hidden form field

 

Session Hijacking

- 공격자는 사용자가 로그인하기를 기다립니다. 그런 다음 공격자는 사용자의 세션 토큰을 획득하고 세션을 "하이재킹"합니다.

- 예측 가능한 토큰, 쿠키 도용, 세션 고정 공격

 

Session 대책

- 강력한 세션 토큰
- SID = [ 사용자 ID, 만료 시간, 데이터] 데이터 = (기능, 사용자 데이터, ...)
- 세션토큰 = HMAC(k, SID)
-> k: 사이트의 모든 웹 서버에 알려진 키
- 더 나은 SID를 위해 SID 클라이언트 IP 주소, 클라이언트 사용자 에이전트에 시스템 특정 데이터를 포함합니다(없는 것보다 낫습니다).
- 서버는 여전히 일부 사용자 상태를 유지해야 합니다.
- 예를 들어 로그아웃 상태(요청할 때마다 확인해야 함)

 

XSS(Cross-site scription)

- 2개의 웹사이트가 교차 될 때 공격 가능

- HTML 페이지가 만들어지는 순간 다른 적합한 값으로 태그를 변경

 

Persistent XSS(or stored XSS)

- Displaying user input without filtering causes XSS

- Ex) Webboard, webmail, warez,...

Non-persistent XSS(or reflected XSS)

- 검색 엔진: 문자열을 검색하면 일반적으로 검색 문자열이 결과 페이지에 그대로 다시 표시되어 검색된 내용을 나타냅니다.

- 이 응답이 HTML 제어 문자를 제대로 이스케이프하거나 거부하지 않으면 교차 사이트 스크립팅 결함이 발생합니다.

-> 대책) 특정 문자열을 변경

728x90
반응형
Comments