• 제목/요약/키워드: secure coding guide

검색결과 10건 처리시간 0.025초

C 시큐어 코딩 규칙 분류를 통한 실행 안전성을 보장하는 한글 언어 설계 (A Design of a Korean Programming Language Ensuring Run-Time Safety through Categorizing C Secure Coding Rules)

  • 김연어;송지원;우균
    • 정보과학회 논문지
    • /
    • 제42권4호
    • /
    • pp.487-495
    • /
    • 2015
  • 요즘에는 대부분 정보가 전산화되어 다루어지고 있기 때문에 전산화된 정보의 안전성을 높이는 것이 매우 중요하다. 하지만 코딩 실수로 발생하는 많은 메소드 오용 때문에 소프트웨어 자체가 취약해짐에 따라 정보의 안전성이 위협받을 수 있다. 해킹 공격을 원천적으로 차단하여 정보의 안전성을 높이기 위해 시큐어 코딩 가이드가 제안된 바 있지만, C와 Java 프로그래머를 위주로 작성되었기 때문에 다른 프로그래밍 언어에서는 적용하기 어렵다. 이 논문에서는 다른 프로그래밍 언어에도 사용할 수 있도록 시큐어 코딩 가이드의 규칙을 재분류한다. 구체적으로 행정자치부에서 발표한 C 시큐어 코딩 가이드를 이용하였다. 그리고 이 분류에 따라 구별된 규칙을 새로 제안한 한글 프로그래밍 언어인 새싹에 적용해 보았다. 그 결과 새싹에서는 C 언어 대비 점검해야 할 취약점 규칙의 수가 52% 줄어든 것으로 나타났다.

AHP기법을 이용한 시큐어 코딩의 항목 간 중요도 분석 (An Analysis of the Importance among the Items in the Secure Coding used by the AHP Method)

  • 김치수
    • 디지털융복합연구
    • /
    • 제13권1호
    • /
    • pp.257-262
    • /
    • 2015
  • 해킹과 같은 사이버 공격의 약 75%가 애플리케이션의 보안 취약점을 악용하기 때문에 안전행정부에서는 코딩 단계에서부터 사이버 공격을 막을 수 있고 보안취약점을 제거할 수 있는 시큐어 코딩 가이드를 제공하고 있다. 본 논문에서는 안행부가 제시한 시큐어 코딩 가이드 7개의 항목들에 대해 AHP기법을 사용하여 우선순위를 찾고 중요도 분석을 하였다. 그 결과 '에러 처리'가 가장 중요한 항목으로 결정되었다. 현재 소프트웨어 감리에 시큐어 코딩에 관한 항목이 없는데, 이 분석 결과는 소프트웨어 개발 과정 중 감리 기준으로 유용하게 사용될 것이다.

SW 개인 개발자를 위한 Secure_Coding 가이드 지원 도구 설계 (Secure Coding guide support tools design for SW individual developers)

  • 손승완;김광석;최정원;이강수
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2014년도 춘계학술대회
    • /
    • pp.595-598
    • /
    • 2014
  • 최근의 사이버 공격은 보안패치가 발표되기 이전의 보안취약점을 악용하는 제로 데이(Zero Day) 공격, 웹 사이트를 대상으로 한 공격이 주를 이루고 있다. 이러한 공격은 소프트웨어 자체에 내장된 보안취약점을 이용하는 것이 대부분으로, 특히나 소스코드의 보안취약점을 이용한 사이버 공격은 보안장비로는 대응이 어려운 특성을 가진다. 따라서 이러한 공격을 예방하기 위해 소프트웨어를 구현하는 단계에서부터 보안취약점을 배제 시켜야한다. 본 논문에서는 구현단계에서부터 보안위협을 해소하는 Secure Coding 가이드 지원 도구를 설계하고자 한다.

  • PDF

사이버범죄예방을 위한 시큐어 코딩 적용 문제점과 시사점: 민간기업 시스템을 중심으로 (Issues and Improvements of Secure Coding for Preventing Cyber Crime: Focus on the Private Company Systems)

  • 최관
    • 융합보안논문지
    • /
    • 제18권2호
    • /
    • pp.69-76
    • /
    • 2018
  • 이 연구는 사이버범죄예방을 위해 민간기업시스템의 시큐어 코딩 적용상의 문제점과 이에 대한 개선안을 시사 하는 것이 목적이다. 본 연구를 위해 3가지 실험이 진행되었는데, 실험 1은 보안담당자가 개발과정에 참여하여 시큐어 코딩준수를 조언하도록 하였고, 실험 2는 보안담당자의 조언 없이 개발자가 스스로 시큐어 코딩을 준수하도록 하였고, 실험 3은 개발자는 담당 소스만 개발하고 보안담당자는 소스의 취약점 진단분석만 집중적으로 하도록 설계하였다. 이 연구의 결과는 첫째, 실험1,2를 통해 사이버범죄관련 보안문제 해결을 위해 보안담당자의 개발과정 참여가 프로젝트가 반복될수록 기간 내 과업달성 및 시큐어 코딩준수율 역시 높아지는 것으로 나타났다. 둘째, 실험 3을 통해 개발자에게 시큐어 코딩 가이드 준수를 맡기는 것보다 기업보안 담당자의 업무전담이 프로젝트 목표달성 및 시큐어 코딩 준수율을 높이는 것으로 나타났다.

  • PDF

모바일 애플리케이션을 위한 보안약점 구조화 기법에 대한 연구 (A Study on the Structured Weakness Classification for Mobile Applications)

  • 손윤식;오세만
    • 한국멀티미디어학회논문지
    • /
    • 제15권11호
    • /
    • pp.1349-1357
    • /
    • 2012
  • 오늘날의 소프트웨어는 인터넷 환경에서 데이터를 교환하기 때문에 해커에 의해 악의적인 공격을 받을 가능성이 항상 존재한다. 이러한 보안약점은 심각한 경제적 손실을 발생시키는 소프트웨어 보안 침해사고의 직접적인 원인이다. 최근에는 보안 약점을 해소하기위해 외부환경에 대한 보안시스템을 견고히 하는 것보다 프로그래머가 견고한 소프트웨어를 개발하는 것이 보안 수준을 향상시킬 수 있는 본질적이고 가장 효과적인 방법이라는 인식이 늘어나고 있다. 이러한 가운데 코딩 단계에서부터 소프트웨어에 대한 취약점을 해소하여 보안 침해사고를 예방하기 위한 코딩 안내서를 제시하는 것이 전 세계적으로 주요한 보안 이슈로 떠오르고 있다. 시큐어 코딩을 개발자나 관리자 입장에서 효과적으로 사용하기 위해서는 전체 시큐어 코딩 집합과 보안약점을 구조적으로 체계화하고 관리해야 하며 새로운 정보의 갱신이 지속적으로 필요하지만, 기존의 시큐어 코딩 및 보안약점은 구조적으로 체계화되어 있지 못하다. 본 논문에서는 Java 언어를 대상으로 기존 시큐어 코딩 자료와 검사 도구의 코딩 룰 조사를 통해 보안 약점을 구조화하고 모바일 애플리케이션을 위한 구조적 보안 약점을 그 결과로 소개한다.

대한민국 전자정부 소프트웨어 개발보안 가이드 개선 방안 연구 (An Improvement of the Guideline of Secure Software Development for Korea E-Government)

  • 한경숙;김태환;한기영;임재명;표창우
    • 정보보호학회논문지
    • /
    • 제22권5호
    • /
    • pp.1179-1189
    • /
    • 2012
  • 본 연구에서는 행정안전부의 전자정부 소프트웨어 개발 운영자를 위하여 2012년에 발표한 소프트웨어 개발보안 가이드를 개선하기 위한 방안을 제안하였다. 개선 방안은 취약점 관점이 아닌 코딩 규칙 관점으로 개발보안 가이드를 구성하는 것이다. 이를 위해 보안약점과 코딩 규칙, 이를 진단하기 위한 진단도구의 상관관계를 연구하였다. 제안된 개발보안 가이드를 사용하게 되면 코딩 규칙을 준수함으로써 보안약점 감소 효과를 거둘 수 있을 것이다. 기존의 개발 보안 가이드가 개발자에게 보안약점이 없는 프로그램을 개발하도록 하는 달성하기 어려운 책임을 지우는 것에 반해, 본 논문에서 제안하는 개발보안 가이드는 프로그래머의 책임을 코딩 규칙을 준수하도록 하는 것으로 제한할 것이다.

설계 단계의 보안 코딩 지침-입력 데이터 검증 및 표현 (Secure Coding Guide of Design Step-Verification and Expression of Input Data)

  • 신성윤;이현창;안우영
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2016년도 제53차 동계학술대회논문집 24권1호
    • /
    • pp.105-106
    • /
    • 2016
  • 본 논문에서는 S/W 개발 보안 지침에서 설계 단계의 보안 코딩 지침을 알려준다. 크로스 사이트 스크립트 공격 취약점(XSS)에서부터 자원 삽입 까지 S/W 보안 취약점의 주요 내용을 입력 데이터의 검증 및 표현에 맞추어 지침을 전달하도록 한다.

  • PDF

안드로이드 앱 시큐어 코딩 가이드 연구 (Research on Android App Secure Coding Guide)

  • 오준석;최진영
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.252-255
    • /
    • 2010
  • 소프트웨어가 대형화되고 복잡해짐에 따라 소프트웨어에 내재하고 있는 소프트웨어 허점(weakness)의 발생률이 높다. 이런 허점은 컴파일러에 의해 탐지되지 않고, 공격자에 의해 발견되기 쉽다는 특징이 있기 때문에 소프트웨어 취약성을 야기한다. 스마트폰의 확산으로 인해 다양한 종류의 스마트폰 앱이 개발되고 있다. 이에 따라 스마트폰 앱이 대형화되고 복잡해지고 있으므로, 여기에 내재하는 소프트웨어 허점을 사전에 예방하는 것은 중요하다. 본 논문에서는 안드로이드 앱을 개발할 때, 소프트웨어 취약점을 야기하며, 개발자가 간과하기 쉬운 소프트웨어 허점을 사전에 제거하고자 안드로이드에 특화된 시큐어 코딩 가이드를 제시한다.

정적 분석을 이용한 안전한 한글 프로그래밍 언어의 개발 (Development of Safe Korean Programming Language Using Static Analysis)

  • 강도훈;김연어;우균
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제5권4호
    • /
    • pp.79-86
    • /
    • 2016
  • 소프트웨어 보안 사고의 약 75%는 소프트웨어 취약점으로 인해 발생한다. 또한, 제품 출시 후 결함 수정 비용은 설계 단계의 수정 비용보다 30배 이상 많다. 이러한 배경에서, 시큐어 코딩은 유지 보수 문제를 해결하는 방법 중 하나로 제안되었다. 다양한 연구 기관에서는 소프트 웨어 보안 약점의 표준 양식을 제시하고 있다. 새로운 한글 프로그래밍 언어 새싹은 언어 수준에서 보안 약점 해결 방법을 제안하였다. 그러나 이전 연구의 새싹은 API에 관한 보안 약점을 해결하지 못하였다. 본 논문에서는 API에 의한 보안 약점을 해결하는 방법을 제안한다. 이 논문에서 제안하는 방법은 새싹에 위험한 메소드를 검사하는 정적 분석기를 적용하는 것이다. 위험한 메소드는 오염된 데이터 유입 메소드와 오염된 데이터 사용 메소드로 분류한다. 분석기는 위험한 메소드 탐색, 호출 그래프 구성, 호출 그래프를 바탕으로 유입 메소드와 사용 메소드간의 경로 탐색, 검출된 보안 약점 분석 순으로 4단계에 걸쳐 보안 약점을 분석한다. 이 방법의 효율성을 측정하기 위해 정적 분석기를 적용한 새로운 새싹을 이용하여 두 가지 실험을 실행하였다. 첫 번째 실험으로서 이전 연구의 새싹과 개선된 새싹을 Java 시큐어 코딩 가이드를 기준으로 비교하였다. 두 번째 실험으로써 개선된 새싹과 Java 취약점 분석 도구인 FindBugs와 비교하였다. 결과에 따르면, 개선된 새싹은 이전 버전의 새싹보다 15% 더 안전하고 개선된 새싹의 F-measure는 68%로써 FindBugs의 59%인 F-measure와 비교해 9% 포인트 증가하였다.

SW 취약점의 보안성 강화를 위한 진단원의 교육 양성 연구 (Research on Education and Training of the Analyzer for Security Enhancement of SW Vulnerability)

  • 김슬기;박대우
    • 한국정보통신학회논문지
    • /
    • 제21권5호
    • /
    • pp.945-950
    • /
    • 2017
  • 소프트웨어의 취약점으로 인하여, 국가의 사이버 인프라와 실물 금융자산 에 대한 해킹 공격이 발생하고 있다. 소프트웨어는 인터넷 정보제공과 사이버 금융결제 및 사이버 인프라를 통제하고 운영하는, 운영체제 및 실행시스템을 구성하는 필수요소이기 때문이다. 이러한 소프트웨어 취약점을 분석하고, 보안성을 강화해야 사이버 인프라의 보안성이 강화되고, 실제 국가와 국민의 실제 생활에 보안성이 강화된다. 소프트웨어 개발보안 제도 분석과 소프트 웨어 개발보안 진단 분석 및 소프트웨어 취약점의 보안성 강화를 위한 연구를 한다. 또한 소프트웨어 취약점 진단원 양성 및 보수교육을 위한 교재개발과 진단원 시험문제 개발 및 진단원의 파일럿 테스트, 그리고 진단원의 투입인력 비용기준을 연구한다. 본 논문의 연구는 소프트웨어 취약점 진단원을 양성하는 교육과정과 진단가이드를 제시하여, 국가와 국민 생활의 사이버 인프라의 소프트웨어 보안성을 강화하는 데 목적이 있다.