INCOGNITO 202312 [WebSocket] TLS HandShake Wireshark 로 www.naver.com에 에 TLS로 접속하려고 할 때, 실제 패킷이 어떻게 오가는지 확인한다. 1. Client Hello 가장 첫번째 단계로, 이 과정에서 클라이언트가 서버에 접속한다. 클라이언트가 서버에게 Client Hello 라는 메세지를 날리는 것이다. - TLS version 패킷 안의 메세지 정보를 살펴보면 Clinet에서 사용하는 TLS version이 나와있다. - Cipher Suites Client가 지원하는 암호화 방식들이다. 서버와 클라이언트가 서로 지원하는 암호화 방식이 다를 수 있어서, Handshake를 통해 어떤 암호화 방식을 사용할 것인지 결정해야 한다. - Client Random Data 클라이언트에서 생성한 난수이다. 이 Random Data.. 2024. 3. 10. [WebSocket] Jenkins 보안 취약점 ( CVE-2024-23897 / CVE-2024-23898) 최근 Jenkins에서 공격에 취약한 서버의 데이터에 액세스하고 특정 조건에서 임의의 CLI 명령을 실행할 수 있는 두가지 취약점이 발견됐다. Jenkins는 소프트웨어 개발, 특히 지속적 통합 (CI) 및 지속적 배포(CD)에 널리 사용되는 오픈소스 자동화 서버로, 애플리케이션 구축, 테스트, 배포 등 소프트웨어 개발 프로세스의 다양한 부분을 자동화하는데 중요한 역할을 한다. 첫번째 취약점인 CVE-2024-23897은 인증되지 않은 공격자가 제한된 양의 임의 파일 데이터를 읽을 수 있으며, 공격자가 Jenkins 서버에서 전체 임의 파일에 대해 "읽기 전용" 권한을 부여받을 수 있는 취약점이다. 그리고 공격자는 "읽기" 권한을 부여받는 취약성을 활용하여, 관리자에게 권한을 에스컬레이션하고 결국 서버에.. 2024. 3. 7. [WebSocket] WAF / IDS / IPS WAF (Web Application Firewall) : 웹 애플리케이션 방화벽은 악의적 공격과 원치 않는 인터넷 트래픽으로부터 웹 애플리케이션을 보호할 수 있도록 지원한다. WAF를 사용하면 IP 주소, HTTP 헤더, HTTP 본문, URI 문자열, XSS ,SQL 삽입 등의 인터넷 위협을 방지하기 위한 규칙을 수립하고 관리할 수 있다. 네트워크 Layer7 (애플리케이션) 계층에서 HTTP 프로토콜을 베이스로 하는 취약점 공격을 탐지 및 차단한다. 일반적인 네트워크 방화벽과는 달리 웹 애플리케이션 보안에 특화된 방화벽이다. 웹 서비스를 하는 모든 웹 서버를 대상으로 보호한다. 따라서, WAF는 웹 연결 애플리케이션을 보호하고, 규정 준수와 분석을 위한 액세스 로그를 수집하기 위해 사용된다. WAF.. 2024. 2. 26. [WebSocket] HTTPS / SSL / TLS 앞서 진행한 WebSocket의 기밀성/무결성 취약점에 대한 대응 방안으로는 HTTPS를 사용하는 방법이 있다. HTTPS(HTTP Secure) 은 HTTP 프로토콜의 보안이 강화된 버전으로 HTTP에 SSL/TLS 암호화 프로토콜을 이용하여 전송되는 데이터를 암호화하는 과정을 추가한 것이다. 일반 HTTP를 사용하여 데이터를 전송할 때 데이터는 쉽게 스니핑할 수 있는 데이터 패킷으로 나뉘기 때문에, 공용 WIFI 와 같이 안전하지 않은 매체를 통한 통신은 도청에 매우 취약하다. HTTP를 통한 모든 통신은 일반 텍스트의 형태로 이루어지기 때문에 공격자가 쉽게 접근할 수 있다. HTTPS를 사용하면 트래픽이 암호화되므로 패킷을 스니핑하거나 가로챈다고해도 무의미한 문자열로만 인식되게 된다. 하지만 HTT.. 2024. 2. 26. [WebSocket] CSWSH 취약점 방어 기법- Oauth 인증 프레임워크를 통한 AccessToken 인증 CSWSH 공격으로부터 웹 애플리케이션을 보호하기 위해서는 1. HandShake 과정에서 Origin 헤더를 확인 2. 서버의 Handshake 요청시 CSRF 토큰처럼 세션별 임의의 토큰을 사용하여 서버를 확인 등의 방법이 있지만, 이러한 방법들은 사용 효율성이 떨어지거나 불필요한 토큰 생성 프로세스를 증가시키는 문제점이 존재한다. 이러한 문제점을 보완하는 방법으로는 Oauth 2.0의 개념을 도입하여 다른 도메인과의 접근을 허용하며 임의의 토큰을 사용하는 방법을 구체화하여 Oauth 인증 프레임워크를 통한 AccessToken 인증을 하는 방법이 있다. 이 인증 방법은 최초에 한번 생성된 토큰으로 사용자를 인증하기 때문에 로그아웃을 하지 않는 이상 토큰 생성 프로세스는 실행되지 않아서 CSRF 토큰.. 2024. 2. 18. [WebSocket] CSWSH 취약점 방어 기법 - 혼합 암호화 기반 일회성 무작위 토큰 WebSocket은 네트워크 처리량을 개선하고, 대기 시간 감소, 서버 부담을 줄일 수 있는 장점이 있지만 공격자가 사용자 데이터를 삭제, 수정하고 악의적으로 데이터를 가로채고 훔치는 등의 많은 보안 위협을 초래할 수 있다. 최근 몇 년 동안, 웹소켓 관련 보안 취약점이 다수 발견되었으며, 가장 일반적인 취약점으로는 CSWSH 이 있다. CSWSH 취약점 :Cross-Site WebSocket Hijacking, 웹 소켓을 통해 웹 애플리케이션의 취약점을 악용하여 공격자가 사용자의 웹 소켓 연결을 탈취하는 공격 기술 CSWSH 취약점은 다음과 같은 상황에서 발생할 수 있다. 인증 및 권한 부여 부재 : 웹소켓 연결이 인증 및 권한 부여 매커니즘이 없는 경우, 악의적인 사용자가 사용자의 인증 정보를 획득하.. 2024. 2. 16. 이전 1 2 다음