• Title/Summary/Keyword: 시큐어 코딩 가이드

Search Result 15, Processing Time 0.04 seconds

Categorizing C Secure Coding Rules for a Design Guideline of a New Language (새로운 언어 설계의 지침을 위한 C 시큐어 코딩 규칙 분류)

  • Kim, Yeoneo;Woo, Gyun
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2014.04a
    • /
    • pp.571-574
    • /
    • 2014
  • 현대 사회에서 정보보안은 무엇보다 중요한 요소로 자리 잡고 있다. 시큐어 코딩은 정보보안 기법의 하나로 보안 취약점을 원천적으로 차단하여 보안 비용을 획기적으로 줄이는 방법이다. 하지만 기존 시큐어 코딩 가이드는 C나 Java와 같은 특정 언어에 대한 가이드만 제공하고 있다. 이 논문에서는 다양한 언어에서도 기존의 시큐어 코딩 가이드를 활용할 수 있도록 언어적 특징을 기반으로 시큐어 코딩 가이드를 재분류하고자 한다. 이를 위해 이 논문에서는 많은 언어의 기반이 되는 C 언어의 시큐어 코딩 가이드 중 안전행정부에서 발표한 C 시큐어 코딩 가이드를 이용하여 재분류 작업을 수행하였다. 그 결과 총 58개의 취약점 중 언어와 관련이 있는 취약점은 19개로 약 33%가 프로그래밍 언어와 관련 있는 것을 확인하였다. 또한, 제안 방법의 내용 중 언어적 특성쪽의 취약성을 모두 해결할 수 있도록 문법을 설계한다면 C 언어보다 보안성이 높은 언어를 설계할 수 있다.

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

  • Kim, Chi-Su
    • Journal of Digital Convergence
    • /
    • v.13 no.1
    • /
    • pp.257-262
    • /
    • 2015
  • The ministry of security and public administration provide the secure coding guide that can remove the vulnerability of applications and defend cyber attack from the coding step because cyber attack like the hacking about 75% abusing the vulnerability of applications. In this paper we find the oder of priority and did the criticality analysis used by AHP about 7 items in the secure coding which the ministry of security and public administration provide. The result is decided that 'exception handling' is the most important item. There is no secure coding items in software supervision currently, therefore the result of the research will make good use audit standards in the process of the software development.

Android-based mobile messenger application vulnerability analysis and secure coding method (안드로이드 기반 모바일 메신저 취약점 분석 및 시큐어 코딩 적용방안)

  • Paik, Chan Ho;Sun, Jong Min;Ryu, Ki Dong;Moon, Byeong Jong;Kim, Tae wan;Kim, Woo Je
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2014.01a
    • /
    • pp.83-87
    • /
    • 2014
  • 본 논문에서는 안드로이드 스마트폰 환경에서 높은 점유율을 가진 카카오톡 모바일 메신저 앱에 대하여 행정안전부가 고시한 Android-JAVA 시큐어 코딩가이드의 입력 데이터 검증 및 표현, API악용, 보안특성, 시간 및 상태, 에러처리, 코드 품질, 캡슐화 등 18가지 보안 취약점을 분석하고, 해당 취약점에 대한 시큐어 코딩 기법을 적용한다. 먼저 현재 상용화되고 있는 카카오톡 모바일 메신저 코드를 역공학(리버스엔지니어링)방법을 이용하여 코드단에서 소스를 분석한다. 실제 코드에서 시큐어 코딩이 안드로이드 스마트폰 환경에서 행정안전부가 고시한 Android-JAVA 시큐어 코딩가이드를 기준으로 취약한 부분을 찾고, 적용이 안 되어 있는 부분에 안드로이드 환경에 맞는 시큐어 코딩 기법을 적용한다.

  • PDF

전자정부 응용 개발을 위한 시큐어 코딩 가이드

  • Han, Kyungsook;Pyo, Changwoo
    • Review of KIISC
    • /
    • v.25 no.1
    • /
    • pp.18-25
    • /
    • 2015
  • 컴퓨터와 네트워크가 보안 상 안전하려면 무엇보다 사용되는 시스템 및 응용 프로그램에 보안약점이 없어야 한다. 보안약점은 공격자가 이용하여 제어 흐름을 탈취하거나 원하는 정보를 유출할 수 있게 하는 프로그램 상의 불완전한 부분을 뜻한다. 보안약점이 없는 프로그램을 만들기 위한 방법으로 시큐어 코딩 규칙을 정의하고, 프로그램 개발 단계에서 이를 적용하게 할 수 있다. 코딩 과정에서 시큐어 코딩 규칙을 준수하여 보안약점 발생을 억제하는 방법은 예방적 조치이다. 아무런 규칙 없이 코딩을 진행한 후 보안약점을 분석, 제거하는 방법보다 프로그래머들에게 부담이 적고, 정적 분석을 사용하여 보안약점을 분석하는 도구들의 치명적인 약점인 오탐 비율을 낮춘다. 이 글은 2014년까지 소프트웨어 개발 보안 센터를 중심으로 진행된 행정자치부의 C/C++, Java, PHP 프로그래밍 언어를 위한 시큐어 코딩 가이드에 대하여 설명한다.

A study of how to input data validation from the central viewpoint using eGov framework (전자정부 표준프레임워크를 이용한 중앙집중적인 관점에서의 입력 데이터 검증 방법 연구)

  • Lee, Sang-Gu;Choi, Jin-Young
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2013.11a
    • /
    • pp.666-669
    • /
    • 2013
  • 2012년 고시된 '정보시스템 구축 운영 지침'에 따라 행정안전부에서는 '전자정부 SW 개발 운영자를 위한 시큐어 코딩 가이드'를 배포하고 있다. 시큐어 코딩 기법을 예제 위주로 제시함으로써, 개발 실무에 활용도를 높이기 위하여 배포된 시큐어 코딩 가이드는 유용한 지침서임에는 틀림이 없으나, 개발자 개개인이 그 내용을 모두 숙지하기 위해서는 많은 시간과 노력을 필요로 한다. 특히 입력 데이터 검증 및 표현에 관한 시큐어 코딩은 시스템 아키텍쳐 차원의 중앙집중적인 관점이 아닌 개발자 개개인이 구현한 기능 단위 수준에서 수행되고 있는 필드의 현실상, 이를 중앙집중적인 관점에서의 입력 데이터 검증을 통하여, 보다 안전한 소프트웨어를 제작하기 위한 방법을 코드 중심의 사례로 설명하고자 한다.

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

  • Kim, Yeoneo;Song, Jiwon;Woo, Gyun
    • Journal of KIISE
    • /
    • v.42 no.4
    • /
    • pp.487-495
    • /
    • 2015
  • Since most of information is computerized nowadays, it is extremely important to promote the security of the computerized information. However, the software itself can threaten the safety of information through many abusive methods enabled by coding mistakes. Even though the Secure Coding Guide has been proposed to promote the safety of information by fundamentally blocking the hacking methods, it is still hard to apply the techniques on other programming languages because the proposed coding guide is mainly written for C and Java programmers. In this paper, we reclassified the coding rules of the Secure Coding Guide to extend its applicability to programming languages in general. The specific coding guide adopted in this paper is the C Secure Coding Guide, announced by the Ministry of Government Administration and Home Affairs of Korea. According to the classification, we applied the rules of programming in Sprout, which is a newly proposed Korean programming language. The number of vulnerability rules that should be checked was decreased in Sprout by 52% compared to C.

Applying Secure Coding Standard And Alternatives to problems (시큐어 코명 가이드의 기준과 문제점의 대안)

  • Ryu, Seung-Min
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2018.05a
    • /
    • pp.129-130
    • /
    • 2018
  • 한국 소프트웨어 시장에 맞는 시큐어 코딩 가이드 기준을 설립하고, 이를 통하여 경제적인 비용을 절감 시키는 등 소프트웨어 개발을 효율적이고 안전성을 갖게 하는 것을 목표로 한다.

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

  • Choi, Kwan
    • Convergence Security Journal
    • /
    • v.18 no.2
    • /
    • pp.69-76
    • /
    • 2018
  • The purpose of this study is to prevent cyber crime in private company systems by applying secure coding and identify its problems. Three experiments were conducted. In Experiment 1, a security manager was participated and gave advise to the developer to follow secure coding guidelines. In Experiment 2, a security manager did not participate, but let the developer himself committed on secure coding. In Experiment 3, a security manager provided reports on weaknesses of each package source to the developer and the developer was only focused on source development. The research results showed that the participation of a security manager on development raised secure coding compliance rate and finished the project within a given periods. Furthermore, it was better to entrust a security manager with the task of following the secure coding guide than the developer, which raised secure coding compliance rate and achieved project objectives faster. Further implications were discussed.

  • PDF

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

  • Oh, Joon-Seok;Choi, Jin-Young
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.11a
    • /
    • pp.252-255
    • /
    • 2010
  • 소프트웨어가 대형화되고 복잡해짐에 따라 소프트웨어에 내재하고 있는 소프트웨어 허점(weakness)의 발생률이 높다. 이런 허점은 컴파일러에 의해 탐지되지 않고, 공격자에 의해 발견되기 쉽다는 특징이 있기 때문에 소프트웨어 취약성을 야기한다. 스마트폰의 확산으로 인해 다양한 종류의 스마트폰 앱이 개발되고 있다. 이에 따라 스마트폰 앱이 대형화되고 복잡해지고 있으므로, 여기에 내재하는 소프트웨어 허점을 사전에 예방하는 것은 중요하다. 본 논문에서는 안드로이드 앱을 개발할 때, 소프트웨어 취약점을 야기하며, 개발자가 간과하기 쉬운 소프트웨어 허점을 사전에 제거하고자 안드로이드에 특화된 시큐어 코딩 가이드를 제시한다.

Application of Machine Learning Techniques for the Classification of Source Code Vulnerability (소스코드 취약성 분류를 위한 기계학습 기법의 적용)

  • Lee, Won-Kyung;Lee, Min-Ju;Seo, DongSu
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.30 no.4
    • /
    • pp.735-743
    • /
    • 2020
  • Secure coding is a technique that detects malicious attack or unexpected errors to make software systems resilient against such circumstances. In many cases secure coding relies on static analysis tools to find vulnerable patterns and contaminated data in advance. However, secure coding has the disadvantage of being dependent on rule-sets, and accurate diagnosis is difficult as the complexity of static analysis tools increases. In order to support secure coding, we apply machine learning techniques, such as DNN, CNN and RNN to investigate into finding major weakness patterns shown in secure development coding guides and present machine learning models and experimental results. We believe that machine learning techniques can support detecting security weakness along with static analysis techniques.