목록Web (17)
Self-Improvement
*XML(eXtensible Markup Language) ※마크업 언어가 아닌 마크업 언어를 정의하기 위한 언어 - XML은 기존 HTML이 가지고 있는 태그의 한계와 SGML의 복잡성을 보완하기 위해 만들어진 것으로 웹에서의 데이터 및 구조화된 문서들을 위한 보편적인 표준이다. - 이름에서 보여지듯 XML은 고정된 태그를 가지고 있던 HTML과 달리 문서의 내용에 관련된 태그를 사용자가 정의할 수 있도록 하여 내용 정보의 중요성을 강조 *단점 - 프로그램이 언어나 데이터베이스의 시스템을 입력하기 위해 XML을 맵핑하기가 어렵고 데이터가 특정 애플리케이션에 맞춰 구조화된 경우에는 더 까다롭다. 또한 많은 태그 때문에 문자량이 늘어나 응답 시간이 느린것이 단점이다. ※XML은 너무 무거워 웹 실행 속도가..
*쿠키(Cookie) - 쿠키는 클라이언트에 저장되는 키와 값이 들어있는 작은 데이터 파일이다. - 쿠키는 이름, 값, 만료 날짜, 경로 정보가 들어있습니다. - 쿠키는 일정 시간동안 데이터를 저장할 수 있어서 로그인 상태를 유지합니다. - 쿠키는 클라이언트의 상태 정보를 본인 하드 디스크에 저장하였다가 필요할 때 참조, 재사용 합니다. *쿠키의 원리 1) 클라이언트가 브라우저로 웹페이지 접속 2) 클라이언트가 요청한 웹페이지를 전송받으면서 쿠키를 하드에 저장 3) 클라이언트 재 방문시 웹페이지 요청과 함께 쿠키값도 전송 4) 지속적으로 로그인 정보를 가지고 있는 것 처럼 사용 *쿠키의 사용 예 - 방문 사이트에서 아이디와 비밀번호를 저장하시겠습니까? 라고 나타나는 것은 쿠키로 저장하겠냐 라는 뜻이다. ..
*Web Web 서버는 클라이언트가 웹 브라우저에서 서버에 페이지 요청을 하면 Web 서버에서 요청을 받아 정적 페이지(.html .jpeg .css 등..) 컨텐츠를 제공하는 서버이다. 대표적인 WEB서버에는 Apache, NGINX 와 Windows 전용 Web 서버 인 IIS 가 있음 *WAS (Web Application Server) html 만으로는 할 수 없는 데이터베이스 조회나 다양한 로직처리 같은 동적인 컨텐츠를 제공하기 위해 만들어진 어플리케이션 서버이다. 대표적인 WAS에는 Tomcat, Jeus, JBoss, Web Sphere 등이 있음 *결론 Web 서버는 정적인 데이터를 처리하는 서버이며 이미지나 단순 html파일과 같은 리소스를 제공하는 서버는 웹 서버를 통하면 WAS를 이용..
*ASP(Active Server Pages) 1. 동적 서버 페이지 언어로 보통 비주얼 베이직 스크립트와 같이 사용되어 동적인 웹 페이지를 구현하게 해준다. 2. MS사에서 제공하는 윈도우 서버 OS상에서만 제공하는 다양한 컴포넌트를 활용하는 웹 프로그래밍 언어이다. 3. MS사의 윈도우 OS상에서만 동작하기 때문에 리눅스와 같은 OS로 사용하는 서버에서는 사용 할 수 없다. *JSP(Java Server Pages) 1. Sun 사의 JAVA 를 기반으로 웹 환경에 맞게 개발된 프로그래밍 언어이다. 2. 보완성이 우수하고 많은 우수한 기능들이 포함되어 있어 대기업이나 은행 등에서 많이 사용한다. 3. 리눅스와 윈도우 OS뿐만 아니라 대부분의 다른 플랫폼에서도 운영 할 수 있다. 4. JAVA의 객체지..
A1:2017 - 인젝션 SQL, OS, XXE, LDAP 인젝션 취약점은 신뢰할 수 없는 데이터가 명령어나 쿼리문의 일부분으로써, 인터프리터로 보내질 때 발생합니다. 공격자의 악의적인 데이터는 예기치 않은 명령을 실행하거나 올바른 권한 없이 데이터에 접근하도록 인터프리터를 속일 수 있습니다 A2:2017 - 취약한 인증 인증 및 세션 관리와 관련된 애플리케이션 기능이 종종 잘못 구현되어 공격자들이 암호, 키, 세션 토큰을 위험에 노출시킬 수 있거나 일시적 또는 영구적으로 다른 사용자의 권한 획득을 위해 구현 상 결함을 악용하도록 허용합니다 A3:2017 - 민감한 데이터 노출 다수의 웹 애플리케이션과 API는 금융 정보, 건강 정보, 개인 식별 정보와 같은 중요한 정보를 제대로 보호하지 않습니다. 공격..
*XSS(Cross Side Script) 사이트의 검색, 게시판 페이지에 스크립트 코드를 삽입하여 접속한 사용자의 정보(쿠키, 세션 등)을 탈취하는 공격기법 이다. 공격 대상 : Client *XSS 종류 1.Stored 시판 같은 곳에서 사용자 입력 폼에 악성 스크립트 태그를 포함하여 게시글을 서버에 업로드 시켜놓고 다른사용자가 페이지를 읽는 순간 브라우저를 공격하는 방식 2.Reflected 서버가 외부에서 입력받은 값을 받은 후 브라우저에 전송하는 과정에서 사용된 변수안에 가공된 변수의 값(악성 스크립트)을 넣어 서버가 제대로된 값을 가져오지 않고 악성 스크립트가 브라우저에서 실행이 된다. 3. DOM 서버와 관계없이 브라우저에서 발생하는건데 조작된 URL을 사용자에게 전송하면 사용자는 이 URL..
*sql injection 웹 애플리케이션 환경에서 DB에 질의하는 과정에서 일반적인 값 외에 악의적인 구문을 삽입하여 DB에 접근하는 공격기법이며 대표적으로 이 기법을 통해 인증우회, DB내용검색이 있습니다. 입력된 값에 대한 필터링, 이스케이핑 하지 못했을 경우에 발생한 *SQL Injection 종류 1.Union SQL Injection (주로 정보수집용) 공격자는 UNION을 악용하여 원래의 요청에 추가 쿼리를 삽입하여 정보를 얻어내는 방식 2.Blind SQL Injection (중요) SQL Injection 공격에서 에러가 발생되지 않는 사이트에서는 참 혹은 거짓 쿼리를 통해 판단하여 공격하는 기법이다. ( 에러가 웹방화벽에 의해 막히는지 개발자 임의의 설정에 의해 막히는지 판단 여부이며 ..