보안

    XSS란 무엇이며 어떻게 방어할 수 있을까?

    🔍 XSS란 무엇인가? 크로스 사이트 스크립팅(Cross-Site Scripting, 이하 XSS)은 웹 보안 취약점 중 하나로, 공격자가 사용자의 웹 브라우저에 악의적인 스크립트를 주입할 수 있게 하는 공격 방식입니다. 이 취약점은 웹 애플리케이션에서 사용자 입력을 적절히 검증하거나 이스케이프 처리하지 않을 때 발생합니다. XSS 공격은 사용자의 세션 토큰, 쿠키, 개인 정보 등을 탈취하거나 사용자를 대신하여 특정 행위를 수행하게 만드는 등 다양한 형태로 이루어질 수 있습니다. 🔍 XSS는 왜 등장했는가? XSS 취약점은 웹 애플리케이션의 발전과 함께 등장했습니다. 초기 웹 사이트들은 주로 정적인 정보를 제공하는 데 초점을 맞췄지만, 시간이 지나면서 사용자 상호작용과 개인화된 콘텐츠의 필요성이 증가했습..

    SQL Injection 공격과 대응방법

    🔍 SQL Injection 많은 사이트에서 폼을 이용한 로그인, 게시글 작성 등을 많이 볼 수 있다. SQL Injection은 입력 폼에 SQL 쿼리를 작성하는 것으로, 이러한 간단해 보이는 행위가 데이터베이스 시스템에 큰 영향을 줄 수 있다. (e.g 패스워드와 신용카드와 같은 개인정보 탈취) ✏️ SQL Injection 과정 1. HTTP request를 사용하는 입력 폼을 통해 사용자로부터 입력을 받는다. 2. 이때, 코드에 SQL 코드를 삽입한다. 예를 들어 ' OR 1 = 1'과 같은 코드를 삽입하여 WHERE 절을 항상 참으로 만든다. 3. 웹 서버는 사용자의 요청을 받아 데이터베이스에 전달한다. 4. 데이터베이스는 전달받은 SQL 쿼리를 실행한다. 5. 데이터베이스는 쿼리의 결과를 반환..