Java 크로스사이트 요청 위조 코딩 기법
1. 정의 특정 웹 사이트에 대해서 사용자가 인지하지 못한 상황에서 사용자의 의도와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 요청하게 하는 공격을 말한다. 웹 애플리케이션이 사용자로부터 받은 요청에 대해서 사용자가 의도한 대로 작성되고 전송된 것인지 확인하지 않은 경우 발생할 수 있고 특히 해당 사용자가 관리자인 경우 사용자 권한 관...
1. 정의 특정 웹 사이트에 대해서 사용자가 인지하지 못한 상황에서 사용자의 의도와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 요청하게 하는 공격을 말한다. 웹 애플리케이션이 사용자로부터 받은 요청에 대해서 사용자가 의도한 대로 작성되고 전송된 것인지 확인하지 않은 경우 발생할 수 있고 특히 해당 사용자가 관리자인 경우 사용자 권한 관...
1. 정의 공격자가 외부 입력을 통해서 의도하지 않은 LDAP 명령어를 수행할 수 있다. 즉, 웹 응용프로그램이 사용자가 제공한 입력을 올바르게 처리하지 못하면, 공격자가 LDAP 명령문의 구성을 바꿀 수 있다. 이로 인해 프로세스가 명령을 실행한 컴포넌트와 동일한 권한(authentication)을 가지고 동작하게 된다. LDAP 쿼리문이나 결과에...
1. 정의 외부 입력값을 적절한 검사과정 없이 XPath 쿼리문 생성을 위한 문자열로 사용하면, 공격자는 프로그래머가 의도하지 않았던 문자열을 전달하여 쿼리문의 의미를 왜곡시키거나 그 구조를 변경하고 임의의 쿼리를 샐행하여 인가되지 않은 데이터를 열람할 수 있다. 2. 안전한 코딩 기법 XPath 쿼리에 사용되는 외부 입력 데이터에 대하여...
1. 정의 XQuery를 사용하여 XML 데이터에 대한 동적 쿼리문을 생성할 때 사용하는 외부 입력값에 대해 적절한 검증 절차가 존재하지 않으면 공격자가 쿼리문의 구조를 임의로 변경할 수 있게 된다. 이로 인해 허가되지 않은 데이터를 조회하거나 인증 절차를 우회할 수 있다. 2. 안전한 코딩 기법 XQuery에 사용되는 외부 입력데이터에 대하...
1. Tesseract 테서랙트(Tesseract)는 다양한 운영 체제를 위한 광학 문자 인식 엔진이다. 이 소프트웨어는 Apache License, 버전 2.0에 따라 배포되는 무료 소프트웨어이며 2006년부터 Google에서 개발을 후원했다. 2006년 테서랙트는 당시 가장 정확한 오픈 소스 OCR 엔진 중 하나로 간주하였다. 2. 특징 ...
1. 광학 문자 인식이란 광학 문자 인식(Optical character recognition; OCR)은 사람이 쓰거나 기계로 인쇄한 문자의 영상을 이미지 스캐너로 획득하여 기계가 읽을 수 있는 문자로 변환하는 것이다. 이미지 스캔으로 얻을 수 있는 문서의 활자 영상을 컴퓨터가 편집 가능한 문자 코드 등의 형식으로 변환하는 소프트웨어로써 일반...
1. ANSI SQL이란 DBMS(Oracle, My-SQL, DB2 등)에서 각기 다른 SQL을 사용하므로, 미국 표준 협회(American National Standards Institute)에서 이를 표준화하여 표준 SQL 문을 정립 시켜 놓은 것이다. 2. 특징 표준 SQL 문이기 때문에 DBMS의 종류에 제약을 받지 않는다. (MySQ...
1. 정의 사용자로부터 입력되는 값을 외부사이트의 주소로 사용하여 자동으로 연결하는 서버 프로그램은 피싱(phishing) 공격에 노출되는 취약점을 가질 수 있다. 일반적으로 클라이언트에서 전송된 URL 주소로 연결하기 때문에 안전하다고 생각할 수 있으나, 해당 폼의 요청을 변조함으로써 공격자는 사용자가 위험한 URL로 접속할 수 있도록 공격할 수 ...
1. 사용자 변경 su(substitute user)는 유닉스 명령을 로그아웃하지 않고 다른 사용자의 권한으로 shell을 실행하는데 사용된다. 일반적으로 관리 작업을 위해 다시 로그 오프하지 않고 사용자의 권한을 root로 변경하는데 사용된다. 같은 방법으로 다른 사용자로 전환하는데 사용된다. KDE와 GNOME과 같은 데스크톱 환경은 사용자가 ...
1. UML이란 통합 모델링 언어(UML, Unified Modeling Language)는 소프트웨어 공학에서 사용되는 표준화된 범용 모델링 언어이다. 이 표준은 UML을 고안한 객체 관리 그룹에서 관리하고 있다. 객체 지향 프로그래밍 소프트웨어 집약 시스템을 개발할 때 산출물을 명세화, 시각화, 문서화할 때 사용한다. 2. 다이어그램의 종류 다...