본문 바로가기

CSE26

[웹보안] SQL Injection Attack SQL Injection Attacksql 로그인-p 다음에 비번 입력DB 만들기show database 하면 원래 데이터베이스 보여야함없으니까 create database로 만든다.그 다음 해당 데이터베이스에 접속하고, 테이블을 만든다.DESCRIBE문으로 테이블의 기본 정보를 확인할 수 있다.INSERT INTO 문으로 요소들을 넣을 수 있따.이떄 id는 자동생성되므로 우리가 따로 만질 필요는 없다.select 문으로 테이블 요소들을 확인할 수 있다.where 절where절에 있는 문이 true인 요소들만 반영한다.and나 or을 쓸 수 있다위와 같이 항상 참인 것을 넣을 경우, 모든 요소가 해당되어 출력되게 된다.위의 where 절을 활용해서 원하는 요소의 정보를 수정할수도 있다.한 줄을 주석처리하.. 2025. 6. 2.
[웹보안] XSS XSS는 공격자가 자신의 코드를 피해자의 브라우저에 주입한다.이 코드는 대상 웹사이트에서 온다.웹사이트에서 온 코드는 믿을만하다고 여겨져 페이지를 바꾸고, 쿠키를 읽고, 요청을 보내는 것이 가능해진다.csrf - 서버를 공격xss - 브라우저를 공격Non-persistent XSS Attack웹사이트는 유저의 input이 그대로 웹사이트에 반영되어 실행되는 공격이다.이런 취약한 사이트가 있다그럼 공격자는 피해자에게이 링크를 클릭하게 한다. 피해자가 이 링크를 클릭하면 get요청이 웹 서버에 전달되고, 이 값이 반영된 페이지를 내놓게 된다. 그러면 이 자바스크립트가 피해자의 브라우저에 뜨게 된다.Persistent(Stored) XSS Attack이는 공격자가 직접 서버를 공격하여 persistent st.. 2025. 4. 28.
[웹보안] CSRF Cross-Site Request and Its Problems만약 한 사이트 내부에서 다른 사이트로 요청을 보낸다면 이를 cross site request라고 부른다.예를 들어 페이스북이 아닌 사이트에서 페이스북이 포함된 링크를 눌러서 페이스북으로 요청이 가는 것만약 example.com에서 요청을 보내면 브라우저는 example.com의 쿠키를 붙여서 요청을 보낸다.만약 example.com 말고 다른 사이트로 요청해도 거기에도 브라우저가 쿠키를 붙일 것이다.서버는 이러한 브라우저의 특성때문에 해당 요청이 same-site요청인지 cross-site요청인지 구분이 어렵다.따라서 서버는 cross-site 요청을 정상적인 요청이라고 판단할수도 있다. → 이걸 CSRF라고 부른다.CSRF공격자는 cros.. 2025. 4. 28.
[웹보안] 네트워크와 웹보안 1주차 - 네트워크와 웹보안웹 보안 목적 - 무결성(a가 b사이트에 영향 안미침), 기밀성(a사이트가 b사이트의 정보를 빼앗지 않아야한다.)HTTP 프로토콜 - 클라이언트, 서버가 이를 통해 소통함쿠키서버가 브라우저에 보내는 작은 데이터 조각브라우저는 이를 저장하고, 같은 서버에 다시 보낸다.세션관리, 개인화, 추적에 사용된다.서버가 브라우저에 이렇게 쿠키 설정브라우저가 서버에는 이렇게 전달브라우저는 임의로 쿠키 수정해서 보낼 수 있다.→ 일반적으로 암호화 된 비밀값을 저장하거나, 고유 세션 식별자를 사용한다.HTML 불러옴 → 자바스크립트 수행 → 내부 참조 이미지 추가 요청 → 사용자 이벤트에 대응Frames웹페이지 안에 다른 출처 콘텐츠 삽입frame : 페이지 가장자리 위치iframe : 페이지 .. 2025. 4. 28.
[네트워크] HTTP 헤더 - 캐시와 조건부 요청 캐시 기본 동작기본적으로 웹 브라우저가 서버에게 요청을 하면 서버는 해당 정보를 모두 준다.여기서는 1.1M 용량을 클라이언트에게 전송했다. 만약 두번째 요청을 한다면?마찬가지로 서버는 1.1M용량의 별 사진을 보낼 것이다. 이렇게 하면 브라우저 로딩 속도 저하, 비용문제 등등이 발생한다.따라서 캐시 컨트롤을 통해서 캐시를 적용하면 브라우저 캐시에 해당 정보가 저장된다.그러면 사용자가 60초 내에 다시 요청을 하게되면 서버에 요청을 하여 데이터를 얻는 것이 아니라, 브라우저 캐시를 통해서 얻게 된다. 만약 60초가 초과된다면? 다시 서버에 요청을 하게된다.이때 별 사진에 업데이트 된 내용이 없더라도 다시 네트워크 다운로드가 발생한다.  검증 헤더와 조건부 요청만약 2번의 경우라면? 다시 요청해서 모든 정.. 2025. 3. 28.
[네트워크] HTTP 헤더 - 일반헤더 HTTP 헤더 개요 일반적으로 헤더 내 필드의 구성은 이러하다 헤더는 HTTP 전송에 필요한 모든 부가정보를 가지고 있다. 최신스펙에서 메세지는 표현헤더와 표현데이터로 나뉜다.메세지 본문 = 페이로드표현은 요청이나 응답에서 전달할 실제 데이터이다. 표현헤더는 표현 데이터를 해설할 수 있는 정보를 제공한다.(유형, 길이..) 표현Content - Type미디어 타입, 문자 인코딩을 나타낸다. Content - Encoding표현 데이터를 압축하기 위해 사용한다.데이터를 전달하는 곳에서 압축 후 인코딩 헤더를 추가한다.그러면 데이터를 읽는 곳에서 인코딩 헤더의 정보로 압축해제한다. Content-Language표현 데이터의 자연언어를 표현한다.Content-Length표현데이터의 길이바이트 단위로 표현된다... 2025. 3. 28.