AI 기반 취약점 자동 탐지

<취약점이 포함된 SW 바이너리 자동 탐지·패치·공격 알고리즘 개발>

사례


소프트웨어 기업 A 사는 PHP를 사용하여 웹 서버를 개설하였습니다. A 사는 KISA로부터 당사의 웹서버에 PHP 취약점이 발견되었다는 공지 메일을 받았습니다. 취약점을 패치하기도 전에 웹 서버는 공격을 받았고, A 사에서 보유하고 있던 회원 데이터가 유출되고 말았습니다.
2019년 2분기의 고위험 취약점은 1분기 145개에 비해 총 1,235개로 큰 폭으로 증가하였습니다. 이처럼 취약점 공격이 활발해짐에 따라, 이에 대한 방어책으로 취약점 자동 탐지 및 공격, 패치 등을 통해 실시간으로 소프트웨어를 보호하는 자동화된 시스템 개발이 요구되고 있습니다.

문제


제공된 SW 바이너리를 기반으로 취약점을 탐지 및 패치 하는 알고리즘과 발견된 취약점을 검증할 수 있는 코드(exploit 코드)를 제시하시기 바랍니다.

※ 취약점 패치의 경우, 예선 1라운드에서만 시행되며 취약점 패치 후 상대팀 경연서버를 공격하는 방식의 시범 라운드 운영

 

참가신청


참가신청서 작성 후, rnd_dataset@kisa.or.kr 로 발송해 주시면 신청이 완료됩니다.
· AI 기반 취약점 자동탐지 트랙은 팀 대표자의 소속확인(학계, 산업계 등)이 가능한 자에 한해 신청 가능합니다. (개인 또는 최대 5인 이내의 팀으로 구성)
※ 서류 제출 시 소속을 확인할 수 있는 메일 계정을 사용하여 발송 부탁드립니다.
※ 제출서류 검토 후, 대표자의 메일주소로 데이터셋 다운 링크가 발송됩니다.

  • 접수 기간 : 2019/10/04 ~ 2019/10/31

데이터셋(KISA-challenge2019-Vulnerability) 설명


  • 구성 : CWE 기반 주요 취약점을 포함하는 SW 바이너리 데이터셋(약 60개의 SW 바이너리로 한 개의 바이너리 당 한 개의 취약점으로 구성)
  • 동작환경 : 32비트 리눅스 X86 환경

    ※ 참가자는 경연 서버에서 실행중인 바이너리에 접근해 취약점을 탐지 및 공격하여 획득한 Key 값을 평가 서버에 전송
    ※ 위의 전송 기능을 프로그램에 적용할 수 있도록 REST API 형태의 API로 제공

데이터셋데이터셋 명내용비고
학습KISA-challenge2019-Vulnerability-trainset취약점이 포함된 바이너리 10개설명자료 포함
예선1차KISA-challenge2019-Vulnerability-test1-1st취약점이 포함된 바이너리 20개-
2차KISA-challenge2019-Vulnerability-test1-2nd
3차KISA-challenge2019-Vulnerability-test1-3rd
본선1차KISA-challenge2019-Vulnerability-test2-1st취약점이 포함된 바이너리 30개-
2차KISA-challenge2019-Vulnerability-test2-2nd
3차KISA-challenge2019-Vulnerability-test2-3rd

※ 설명자료는 각 바이너리 별 취약점 정보, 소스코드, 적용된 메모리 보호기법 등의 상세정보를 포함
※ 예선은 온라인으로 진행되며, 본선은 오프라인으로 진행
※ 예·본선에 사용될 경연 서버 1대, 공격 서버 1대(총 2대)는 10월 14일 배포 예정
※ 라운드 진행 시간 및 규칙 등 운영방식은 추후 공지 예정

 

제출 결과물


제출자료내용비고
KEY 파일취약점을 공격하여 root 권한의 쉘을 획득한 후 얻어낸
KEY 파일 제출
알고리즘 설명문서취약점 자동 탐지 프로그램의 알고리즘 설명문서 제출11/15 까지 메일로 제출
(rnd_dataset@kisa.or.kr)
발표자료알고리즘 설명문서를 바탕으로 발표자료 제출약 15분 발표
11/15 까지 메일로 제출
(rnd_dataset@kisa.or.kr)

※ 알고리즘 설명문서를 검토하여 편법 사용 등 문제 발견 시, 수상에서 제외될 수 있음

문의처


AI 기반 취약점 자동 탐지 트랙 담당자
손경아 주임연구원
061-820-1256 / rnd_dataset@kisa.or.kr