XSS 공격이란 무엇이며, 이에 대해 무엇을 할 수 있습니까?

세상은 크로스 사이트 스크립팅(XSS) 취약성으로 알려진 것에 대해 깨어나기 시작하고 있습니다. 전 세계 웹사이트에서 이 문제가 다루어지고 있다는 것은 좋은 일이라고 생각하지만, 우리가 그것이 무엇인지 모르는 것은 그리 좋은 일이 아니라고 생각합니다. 결국, 대부분의 XSS 공격은 잠재적인 피해자가 예방할 수 있습니다. 인터넷에서는 당신이 피해자가 되지 않도록 어떤 위협에 대해서도 스스로 무장하는 것이 당신의 책임입니다. XSS로부터 자신을 보호하는 방법을 이해하려면, 먼저 XSS가 무엇인지, 그것이 당신에게 어떤 영향을 미칠 수 있는지, 그리고 어떻게 예방할 수 있는지를 알아야 합니다.

XSS란 무엇입니까?

정의는 이름에 있습니다. XSS 공격은 특정 스크립트가 주입될 수 있도록 URL을 수정하여 실행됩니다. 예를 들어, URL의 목적지 내에서 완전히 다른 웹사이트가 표시되도록 할 수 있습니다.

수정된 URL의 예를 보십시오:

xss-sample-url

스크립트가 주입된 위치를 보셨나요? 이 예에서는 “로 시작하기 때문에 꽤 쉽습니다.

XSS가 당신에게 미치는 영향은 무엇입니까?

XSS는 다양한 방식으로 사용될 수 있습니다. 어떤 사람들은 악성 URL이 포함된 링크를 트위터에 게시할 수 있습니다. 트위터는 URL을 부분적으로 가려주어 그들의 작업을 반쯤 해줍니다. 신뢰할 수 없는 블로그와 웹사이트 내의 맥락적 링크는 “앵커 텍스트”(밑줄이 그어지고 파란색인 텍스트를 설명하는 또 다른 멋진 방법)로 가려진 URL을 포함할 수 있습니다.

링크를 클릭하면 여러 가지 일이 발생할 수 있습니다. 최상의 경우, 당신은 단순히 “장난”을 경험하게 될 것입니다. 다시 말해, XSS 공격을 수행한 그룹에 대한 크레딧을 보여주는 가짜 콘텐츠가 있는 페이지로 리디렉션될 것입니다. 최악의 경우, 당신의 브라우저는 악몽 같은 증상을 경험하게 될 것입니다. 당신의 홈페이지가 변경될 수 있으며, 실행된 악성 소프트웨어로 인해 컴퓨터에서 여러 가지 성가신 일이 발생할 수 있습니다.

XSS는 또한 당신의 동의 없이 컴퓨터에 쿠키를 설치하여 당신을 추적하는 데 사용될 수 있습니다. 이 데이터를 수집하면 해커가 향후 악성 소프트웨어 감염을 위해 목표로 삼고 있는 사람들의 “디지털 인구 통계”를 더 잘 이해할 수 있게 됩니다. 그런 경우, 당신은 컴퓨터나 모바일 장치에서 아무런 일이 일어나고 있다는 것을 전혀 눈치채지 못할 수도 있습니다.

XSS의 위험성은 얼마나 됩니까?

xss-fakepage

모든 것을 고려할 때, XSS는 일반적으로 그리 위험하지 않습니다. 성가실 수는 있지만, 적어도 단기적으로는 장기적인 결과를 초래하지는 않을 것입니다. 그러나 XSS 공격과 다른 종류의 악의적인 행동 간의 조합에 주의하십시오!

예를 들어, 페이스북이 XSS에 취약하다고 가정해 보겠습니다. 해커는 페이스북의 URL에 가짜 로그인 페이지를 쉽게 주입할 수 있습니다. 당신은 성공적으로 로그인하게 될 것입니다(가짜 페이지가 당신의 자격 증명을 페이스북과 자신의 데이터베이스 모두에 보낼 수 있기 때문에), 하지만 해커는 이제 당신의 사용자 이름과 비밀번호를 가지게 됩니다. 이것이 XSS의 진정한 위험이 드러나는 지점입니다.

XSS로부터 자신을 보호하는 방법

언젠가는 XSS가 과거의 일로 남을 것입니다. 하지만 그때까지는 XSS 함정에 빠지지 않도록 예방하는 방법을 배워야 합니다. 페이지에 들어갈 때마다 URL을 살펴보십시오. 그 안에 스크립트가 있다는 것을 나타내는 것이 있다면(예: 단어를 둘러싼 “<” 및 “>” 문자), 당신의 재량을 사용하고 아마도 떠나는 것이 현명합니다. 또한 링크의 URL을 주의 깊게 살펴보십시오. 모든 링크를 마우스 오른쪽 버튼으로 클릭하고 클립보드에 복사하십시오. URL을 메모장 애플리케이션에 붙여넣고 들어가기 전에 확인하십시오.

자신이 개발 중인 웹사이트가 있다면, 이 치트 시트를 읽어보십시오. 이것은 당신과 방문자를 XSS로부터 보호할 것입니다. 아는 웹 개발자에게 이 치트 시트를 이메일로 보내는 것을 잊지 마십시오. 그들은 감사할 것입니다.

XSS에 대해 더 궁금한 점이 있다면, 아래 댓글에 남겨주세요!