CS/Cyber Security
-
쿠키와 세션CS/Cyber Security 2024. 12. 31. 21:47
Header웹 서버는 사용자를 HTTP의 Header 정보를 통해 일반 사용자인지, 관리자인지를 구분할 수 있다.Header정보에는 쿠키와 세션 정보를 가질수 있는데 이 정보들을 기반으로 사용자를 구분지을 수 있다. Cookiehttp 프로토콜은 stateless(통신이 끝난후 상태를 저장하지 않음), Connectionless(한가지 요청을 처리하면 연결을 끊음) 이 두가지 특징을 가지고 있기 때문에 서버에 접속한 클라이언트를 기억할 수 없다는 특징이 있다.이러한 문제점을 해결하기 위해 등장한 것이 cookie이다. cookie는 key와 value로 이루어져 있으며 서버가 클라이언트에게 발급해준다.이렇게 발급받은 cookie를 클라이언트는 요청이 생길때마다 서버에 같이 전송하고 서버는 이 cookie..
-
(WebGat) JWT tokenCS/Cyber Security 2024. 8. 24. 18:15
JWT 란?웹에서 무결성이 확보된 데이터를 주고받는 하나의 방식을 의미한다.데이터를 Json 형태로 전달하면서 이를 암호화한 값을 바탕으로 무결성을 확인한다.Header, Payload, Signature 구성된 구성요소들을 Base64 URL 인코딩한후 온점으로 구분지어 사용한다. 구성요소Header: 토큰의 유형과 암화화 알고리즘을 포함Payload: 실질적인 데이터를 포함하는 부분으로 payload에 저장되는 데이터를 모두 Clain이라 말한다.Claim에는 이미 정의된 Registered Claim, 사용자 지정 Claim 유형들이 존재한다. Signature: 무결성을 검증할 때 필요한 서명 영역, Header와 Payload를 각각 Base 64 URL로 인코딩한 후 온점을 이어붙여 Heade..
-
SQL injection 2CS/Cyber Security 2024. 8. 8. 03:42
이번에는 더 나아가 SQL injection 공격 기법을 더 알아보고 방어 전략을 알아본다.WebGoat의 SQL injection(mitigation)파트를 통해 배워본다. 1.공백을 허용하지 않는 경우SQL injection 방어를 위해 공백을 허용하지 않는 경우가 존재한다.이 경우에는 /%%/라는 주석을 활용한다.공백을 넣을 곳에 /%%/를 넣게 되면 이 주석이 공백의 역할을 할 것이다. 2.공백과 SQL 문장을 막은 경우이번엔 SQL 문장인 SELECT와 FROM이 들어간 경우 해당 부분을 제외시켜 방어를 하고자 했을때 어떻게 할까?이 경우에는 SELECT 대신에 SESELECTLECT, FROM 대신에 FRFROMOM을 넣게 되면 공격이 가능해진다. 3.SQL injection 방어 방법과 O..
-
SQL injectionCS/Cyber Security 2024. 8. 8. 02:41
SQL injection이란?- 의도되지 않은 SQL 문장을 삽입하는 웹 해킹 기술을 의미한다. '(싱글쿼터)-SQL injection 공격에서 '는 중요하다. '를 통해서 문자열의 범위를 강제종료하고 쿼리부분으로 넘어갈수 있기 때문이다.무슨말이냐면 패스워드에 'or '1'='1 이렇게 입력하면select * from test where passwrod = '' or '1'='1'이런식으로 쿼리문이 동작하게 된다. 즉, 싱글쿼터를 통해서 문자열 범위와 실제 작동되는 쿼리 범위를 나눌 수 있다는 것이다. Blind SQL inejction보안이 취약한 웹사이트의 경우 쿼리 실행결과를 노출하는 경우가 적다.생각해보아라, 우리가 웹 사이트를 이용할때 개발자만 아는 형태로 쿼리를 반환하는 경우는 드물다.(테이..
-
암호화CS/Cyber Security 2024. 7. 31. 02:30
여러가지 암호화 종류에 대해 알아본다 1.Base64데이터를 특정 알고리즘에 따라 변형하는 암호화가 아닌 단순인코딩 방법 중 하나이다.특정 알고리즘만 알게되면 다시 디코딩하여 원문을 알아내는 것이 어렵지 않기때문에중요한 값을 암호화하기에는 추천하지 않는 방식이다. 2.XOR encoding변환을 원하는 데이터와 XOR 연산을 수행할 key 값을 설정한다.쉽게 key값을 유추할 수 있다.https://strelitzia.net/wasXORdecoder/wasXORdecoder.html WebSphere {xor} password decoder and encoder strelitzia.net 3.단방향 암호화한쪽 방향으로 암호화 한다는 뜻이다. 암호화된 데이터를 통해 원문을 찾아낼수 없다는 특징이 있다.M..