디지털 라이브러리[ 검색결과 ]
RESTful 웹 어플리케이션 행위 모델 기반 결함 위치 추정
http://doi.org/10.5626/JOK.2020.47.11.1044
웹 어플리케이션의 규모나 복잡성이 전통적인 소프트웨어보다 커 기존 결함 위치 추정 기법을 적용하기 어렵고, 웹 어플리케이션과 같은 복잡한 시스템 대상의 연구들도 시스템 내 구성 요소들 간 간접적 상호작용과 시스템의 동적 재구성을 고려하지 못한다. 이 문제를 풀기 위해 본 연구는 RESTful 웹 어플리케이션의 실행 기록을 구성 요소들이 수행하는 행위들의 순열로 모델링하고, 그 행위 모델 상에서 결함을 위치 추정하는 기법을 제안한다. 이 기법은 직간접적 상호작용을 모두 반영하는 행위 모델을 사용하고 실행 전에 모델을 미리 구축할 필요가 없어 동적 환경에 적합하다. 기법의 평가를 위해 사례 연구를 수행하여 전체 디버깅 대상 수의 1.8%에 해당하는 순위 내에 모든 결함을 위치 추정했다. 본 연구에서 제안하는 행위 모델 기반 RESTful 웹 어플리케이션 결함 위치 추정 기법이 대규모의 복잡한 웹 어플리케이션의 디버깅 노력을 효과적으로 감소시킬 것으로 기대된다.
불균형 웹 어플리케이션 공격 탐지를 위한 CNN 기반 저복잡도 판정 신뢰도 추정
http://doi.org/10.5626/JOK.2020.47.9.842
최근 웹 어플리케이션 공격의 급격한 증가와 함께 그 종류가 다양해짐에 따라 기존의 기법들만으로는 이를 탐지하는 것에 한계가 있었다. 이러한 문제를 해결하기 위해 convolutional neural network(CNN) 과 같은 기계 학습을 이용한 탐지 기법이 제안되었으나, 이러한 탐지 기법은 판정 오류 샘플에 대한 판정의 신뢰도가 낮다는 단점이 있다. 이 문제를 해결하기 위해, Monte-Carlo batch normalization (MCBN)기법이 제안되었다. 구체적으로, MCBN 기법은 임의의 판정할 샘플이 포함된 서로 다른 mini-batch들을 CNN을 이용하여 반복 판정을 수행하고 이 결과를 평균하여 판정 신뢰도를 추정한다. 그러나 이 기법에서는 mini-batch 를 구성하는 M개의 데이터 중 하나의 판정 데이터를 제외한 모든 데이터에 훈련 데이터를 사용하기 때문에 많은 연산이 요구된다. 따라서 본 논문에서는 불균형 웹 어플리케이션 공격 탐지를 위한 저복잡도 판정 신뢰도 추정 기법을 제안한다. 제안 기법은 판정을 위한 mini-batch 구성 시, 정상 및 공격 샘플 구성 비율을 훈련 과정에서의 비율과 동일하게 유지한다. 이를 위해 판정 데이터에 대한 임시 판정을 이용하여 대략적인 클래스 간 비율을 확인하고 부족한 클래스 데이터를 훈련 데이터로부터 과대표집 하였다. 이를 통해 제안 기법은 MCBN 기법에 비해 계산량을 최대 M배까지 줄였다. 모의 실험 결과로부터, MCBN 기법과 비교하여 판정 성능이 향상되었고 판정 신뢰도 성능저하가 크지 않은 것을 확인하였다.
웹 페이지 스케치기반 HTML코드 자동생성
http://doi.org/10.5626/JOK.2019.46.1.9
웹 응용 개발에서 GUI 스케치를 자동으로 코드화하려는 다양한 연구가 진행되어왔다. 과거 연구에서는 컴퓨터 비전을 이용한 객체의 위치인식 연구와 딥 러닝을 기반으로 한 객체인식 연구가 진행되었다. 과거 연구는 객체를 잘못 인식하거나 아예 인식하지 못한다는 한계가 존재한다. 본 논문에서는 두 가지 기술을 함께 적용하여 기존 객체 인식의 한계를 줄인다. 레이아웃 검출에 컴퓨터 비전을, GUI 객체인식은 딥 러닝을 적용한다. 이러한 기술들을 기반으로 인식한 레이아웃과 GUI객체를 HTML코드로 변환한다. 결과적으로 GUI객체 인식의 정밀도와 재현율은 각각 91%, 86%를 보였으며 HTML코드로 변환이 가능했다.
Convolutional Neural Network를 이용한 웹 어플리케이션 공격 탐지 기법
http://doi.org/10.5626/JOK.2018.45.7.744
웹 어플리케이션 공격이 급격하게 늘면서 기존의 기법들만으로는 이를 탐지하는 것이 한계가 있어, 기계학습 기반의 탐지 기법이 연구되기 시작하였다. 기계학습을 활용한 기존 기법은 공격 탐지를 위해 적절한 특징(feature)을 선정해야 하는 어려움이 있으며, 새로운 공격 패턴이 등장할 경우 이에 적합하도록 특징을 재선정해야 할 경우도 발생한다. 본 논문에서는 HTTP 트래픽을 구성하는 입력이 허용되는 문자에 대한 제한 없이 문자 단위로 16진수 변환한 후 이미지화하고, 이를 입력으로 하는 convolutional neural network을 통해 웹 어플리케이션 공격을 탐지하는 기법을 제안한다. 제안 기법은 별도의 특징 선정 없이 지도학습을 통해 이미지화 된 HTTP 트래픽을 학습하며, 기존의 기계학습 기법보다 최대 84.4%까지 공격 탐지 오류율 성능을 향상할 수 있음을 보였다.
HTML5 캔버스를 활용하는 웹 어플리케이션의 스냅샷 기반 연산 오프로딩
http://doi.org/10.5626/JOK.2017.44.9.871
최근 모바일 기기와 같이 하드웨어 성능이 부족한 기기에서 연산량이 많은 어플리케이션을 효과적으로 수행할 수 있는 방법들이 많이 연구되고 있다. 연산 오프로딩 기법이란 모바일 기기에서 하드웨어 성능이 좋은 서버로 복잡한 연산을 보내서 수행 한 뒤 결과를 받아서 반영하는 방법이다. 연산 오프로딩 기법의 어려움 중 하나는 서버와 클라이언트 사이에서 동작 중인 어플리케이션의 상태를 주고받는 일이다. 스냅샷 기반의 연산 오프로딩 기법은 스냅샷을 이용하여 웹 어플리케이션의 상태를 쉽게 전송할 수 있도록 하였다. 하지만 HTML5 캔버스를 사용하는 웹 어플리케이션의 경우 스냅샷이 캔버스의 상태를 포함하지 못하는 문제가 있어서 스냅샷 기반의 연산 오프로딩을 적용할 수 없었다. 본 연구에서는 스냅샷에 캔버스의 상태를 저장할 수 있는 코드 생성 기술을 제안하여 캔버스를 사용하는 웹 어플리케이션에도 스냅샷 기반 연산 오프로딩 기법을 사용할 수 있도록 하였다.
Multitier 웹 어플리케이션 환경에서 악의적인 SQL Query 탐지를 위한 HTTP Request - SQL Query 매핑 기법
지속적으로 증가하는 인터넷 서비스 요구사항을 만족하기 위하여 인터넷 서비스를 제공하는 시스템은 웹 서버와 DB(database) 서버로 구성된 multitier 구조로 변화되어왔다. 이러한 multitier 웹 어플리케이션 환경에서 기존의 IDS(intrusion detection system)는 웹 서버와 DB 서버에서 misused traffic pattern들이나 signature들을 매칭하여 이미 알려진 공격을 검출하고 해당 접속을 차단하는 방식으로 동작한다. 하지만 이러한 방식의 IDS는 정상적인 HTTP(hypertext transfer protocol) request를 이용하여 악의적으로 DB 서버의 내용의 변조를 시도하는 attacker의 공격을 DB 서버단에서 제대로 검출하지 못한다. 그 이유는 DB 서버는 웹 서버로부터 받은 SQL(structured query language) query가 어떤 사용자의 HTTP request에 의해 발생한 것인지 알지 못하는 상태에서 처리하며, 웹 서버는 SQL query 처리 결과중 어떤 것이 악의적으로 DB 서버 변조를 시도한 SQL query에 의한 결과인지 알 수 없기 때문이다. 이런 공격을 검출하기 위해서는 HTTP request와 SQL query 사이의 상호작용관계를 명확히 파악하고, 이를 이용하여 악의적인 SQL query를 발생시킨 사용자를 추적해야 한다. 이를 위해서는 해당 시스템의 소스코드를 분석하거나 application logic을 완벽하게 파악해야 하므로 현실적으로 불가능하다. 본 논문에서는 웹 서버와 DB 서버에서 제공하는 로그만을 이용하여 모든 HTTP request와 SQL query간의 mapping 관계를 찾아내고, 이를 이용하여 특정 SQL query를 발생시킨 HTTP request를 추정하는 기법을 제안한다. 모의실험을 통하여 94%의 정확도로 HTTP request를 추정할 수 있음을 확인하였다.