• Title/Summary/Keyword: 소스 공개 코드

Search Result 104, Processing Time 0.198 seconds

퍼징 기반의 상용 및 공개 소프트웨어에 대한 보안약점 진단 방법 연구

  • Lim, Ki-young;Kang, Seong-hoon;Kim, Seung-joo
    • Review of KIISC
    • /
    • v.26 no.1
    • /
    • pp.27-33
    • /
    • 2016
  • 보안 약점은 소스코드의 공개 여부와는 관계없이 존재하며, 소프트웨어의 취약점으로 이어질 수 있다. 소스코드가 공개된 소프트웨어의 경우 소스 코드 분석을 통해 보안 약점을 제거하지만, 소스코드가 공개되지 않고 바이너리 형태의 실행파일만 제공되는 소프트웨어의 경우에는 보안 약점을 찾기가 어렵다. 비정상 데이터를 임의로 생성하여 파일 또는 표준입력 형태로 입력하는 퍼징 기법은 위와 같은 소스코드가 공개되지 않은 소프트웨어의 취약점을 찾기 위한 기술이다. 본 논문에서는 소스코드가 없는 상용 및 공개 소프트웨어의 보안 약점을 진단하기 위해 퍼징 기법을 활용하는 방법을 제시하고, 공개된 퍼징 도구 및 프레임워크를 이용하여 설치부터 소프트웨어의 진단 및 발견된 보안 약점을 분석, 제거 등의 퍼징 프로세스를 소개하여 상용 및 공개 소프트웨어 취약점 발견에 도움을 줄 것으로 기대한다.

Design of Digital License for Ownerships Certification While Preserving the Original Program Source Code (프로그램 소스 코드의 원본을 공개하지 않는 소유권 증명을 위한 디지털 라이센스 설계)

  • Kim Hyung-Jong;Lee Dong-Seob;Cha Byung-Rae
    • The Journal of the Korea Contents Association
    • /
    • v.6 no.4
    • /
    • pp.29-37
    • /
    • 2006
  • The intellectual property system was very important to the past industrial society. It is so important to the 21C information age. It is a leading role to developing these information society. Not only the digital content control but the technology of program source code for the intellectual property is so much mean to international competition. On occurring disputation property, we have to prove the fact, there is a problem to show the original source code. In this paper, we simulate the digital licence for program source code to prevent the infringement of copyright and the tipping-off information.

  • PDF

API Similarity Comparison Tool Development for Detecting Theft of Android Application (안드로이드 앱 도용 탐지를 위한 API 유사도 비교 도구 구현)

  • Choi, Sung-Ha;Lee, Hyun-Young;Cho, Seung-Min;Park, Heewan
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2012.04a
    • /
    • pp.792-795
    • /
    • 2012
  • 최근 오픈 소스 커뮤니티가 활성화되고 수많은 오픈 소스들이 공개되고 있어서 많은 개발자들이 오픈 소스를 활용하고 있다. 그러나 오픈 소스도 정해진 라이선스 기반으로 공개되므로 오픈 소스를 사용할 때는 반드시 라이선스를 확인해야 한다. 본 논문에서는 안드로이드 앱의 라이선스 위반이나 코드 도용을 확인할 수 있는 방법으로서 안드로이드 앱 사이의 API 메소드 호출 유사도를 측정하는 방법을 제안한다. 원본 프로그램과 도용된 프로그램은 유사한 API 메소드를 사용할 것임을 예상할 수 있기 때문에 API 메소드 호출이 유사한 것을 확인하면 간접적으로 코드 도용을 확인할 수 있다. 본 논문에서 개발한 API 유사도 측정 도구는 안드로이드 앱의 소스 코드를 필요로 하지 않고, 안드로이드 달빅(Dalvik) 바이트 코드로부터 직접 API 호출 명령어를 분석하여 유사도를 측정한다는 특징이 있다. 본 논문에서 구현한 도구의 평가를 위해서 API 호출 유사도 비교 실험을 수행하였다. 그 결과, 실제로 API 호출 유사도가 높았던 두 앱이 서로 공통된 모듈을 포함하고 있음을 밝혀내었다. 그리고 선행 연구에서 제안했었던 안드로이드 달빅 코드 전체에 대한 유사도 비교 도구보다 비교 속도가 35% 정도 향상된 것을 확인하였다.

A Study on Graph Conversion of Source Code and Its Use in Graph Databases (소스코드의 그래프 변환 및 그래프 데이터베이스에서의 활용에 대한 연구)

  • Seok-Joon Jang;Su-Hyun Kim;Im-Yeong Lee
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2023.11a
    • /
    • pp.314-316
    • /
    • 2023
  • 최근 수많은 오픈소스로 공개되면서, 대부분의 소프트웨어가 오픈소스를 활용하여 구현되고 있다. 하지만, 오픈소스에 적용되어 있는 라이선스 간의 충돌 문제가 발생하면서, 라이선스 위반 문제가 지속적으로 발생하고 있다. 이러한 문제를 사전에 방지하기 위해 소스코드 분석이 필수적이지만, 다양한 기능이 실행되는 소스코드 특성 상 소스코드만 봤을 경우 직관적으로 분석이 어렵다는 문제점이 있다. 최근 소스코드의 효과적인 분석을 도와주는 다양한 도구들이 개발되었고, 그 중 한 가지 방법은 소스코드를 그래프로 변환하여 시각적인 편의성을 제공하는 방법이다. 그래프로 변환된 소스코드는 해당 시점에는 분석이 가능하지만, 분석이 필요할 때마다 변환을 해야 하는 문제점이 존재한다. 따라서 소스코드를 변환한 그래프 데이터를 저장하는 방법이 요구되었는데, 그래프 데이터베이스의 경우 특정 파일 형식만 지원하기 때문에 그래프 데이터 저장에 어려움이 존재한다. 본 제안방식에서는 소스코드를 변환한 그래프 데이터를 그래프 데이터베이스에 효과적으로 저장하고, 분석이 요구될 때마다 데이터베이스 상에서 즉각적으로 분석이 가능한 방법을 제안한다.

Development of QGIS plugin GUI for the GRM Model and Free Open (GRM 모형의 QGIS Plugin GUI 개발 및 모형 공개)

  • Choi, Yun Seok;Park, Sang Hoon;Kim, Kyung Tak
    • Proceedings of the Korea Water Resources Association Conference
    • /
    • 2018.05a
    • /
    • pp.38-38
    • /
    • 2018
  • 본 논문에서는 분포형 강우-유출 모형인 GRM(Grid based Rainfall-runoff Model)의 확장성과 편의성 향상을 위한 소프트웨어 개발에 대해서 기술하였다. 본 연구에서는 크게 3가지를 수행하였다. 첫 번째는 기존의 GRM은 HyGIS, MapWindow GIS 등과 같은 GIS 소프트웨어 및 Microsoft MDB와 코드 수준에서 통합된 형태로 개발되었으며, 이러한 특성은 GRM을 이용한 다양한 응용시스템 개발시 제약 조건으로 작용하였다. 본 연구에서는 GRM 모형을 GIS 및 데이터베스와 코드 수준에서 분리하여 GRMCore.dll을 개발하였다. GRMCore.dll은 콘솔 모드 및 GUI에서 유출해석을 실행할 수 있는 소프트웨어와 실시간 유출해석시스템 등과 같이 유출 해석을 위한 다양한 응용 소프트웨어 개발에 공통적으로 활용될 수 있다. 두 번째는 최근 들어 세계적으로 가장 많이 사용되고 있는 오픈소스 GIS 인 QGIS의 plugin으로 GRM 모형의 GUI(QGIS-GRM)를 개발하였으며, GRM 모형의 입력자료 구축을 위해 TauDEM을 이용해서 Drainage Tool을 개발하였다. Drainage Tool에서는 격자별 흐름방향, 하천망, 유역 등과 같은 수문학적 공간정보를 DEM을 이용하여 구축할 수 있다. 세 번째는 개발된 소프트웨어를 오픈소스로 공개하였다. 공개 대상은 GRM 모형, QGIS-GRM, Drainage Tool 등이며, 각 소프트웨어에 대한 매뉴얼을 포함하고 있다. 소스코드의 공개는 세계적으로 널리 이용되고 있는 오픈소스 플랫폼인 Github(https://github.com/floodmodel/)를 이용하였다. 본 연구를 통해서 기존에는 특정 소프트웨어에 코드 수준에서 의존적이던 GRM 모형의 독립성을 향상시켰으며, 이를 통해 다양한 응용 소프트웨어 개발에 대한 적용성을 높일 수 있었다. 또한 QGIS 기반의 GUI 개발, 모형 입력자료 구축 도구의 개발, 개발된 소프트웨어의 오픈소스화 등을 통해서 사용자들이 좀 더 쉽게 GRM 모형을 활용할 수 있게 하였다.

  • PDF

A Study of Source Code-based Automated Software Vulnerability Assessment (소스코드 기반 소프트웨어 취약점 평가 자동화 방안 연구)

  • Song, Jun-Ho;Park, Jae-Pyo;Kwon, Hyun-Soo;Jun, Moon-seog
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2015.10a
    • /
    • pp.794-796
    • /
    • 2015
  • 본 연구는 소프트웨어의 소스코드를 대상으로 보안 취약성을 자동으로 평가할 수 있는 방안을 연구하여 소프트웨어 취약점 관리의 자동화 기술 아키텍처를 제안한다. IT가 생활환경의 기반기술로 보급화 되며 소프트웨어시장이 가파르게 성장하고 있다. 영리 소프트웨어의 경우 개발기관에서 관리 및 지원을 하지만, 오픈소스 소프트웨어는 비영리 목적과 개발환경으로 인해 체계적으로 관리되기가 어려워 취약점이 발생하기 쉽다. 그럼에도 비용과 효율의 문제로 오픈소스가 광범위하게 활용되고 있어, 오픈 소스 소프트웨어를 도입한 기관 및 단체에 침해를 유발하고, 보안수준을 악화시키고 있다. 이에 오픈 소스 소프트웨어는 소스코드가 공개되는 소프트웨어라는 점을 활용하여 소스코드 수준에서의 취약점 관리 자동화를 지원함으로써, 오픈소스 소프트웨어를 활용하는 분야의 보안 환경을 안전하게 향상시킬 수 있다.

Design of Source Code Obfuscation Tool based LLVM to improve security in Embedded System (임베디드 시스템의 보안성 향상을 위한 LLVM 기반의 소스코드 난독화 도구 설계)

  • Ha, Jae-Hyun;Kawk, Donggyu
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2022.11a
    • /
    • pp.201-203
    • /
    • 2022
  • 임베디드 시스템이 일상생활 및 각종 산업에 밀접하게 연관되어 개인 정보 및 국가 기술 등 지적 자산에 대한 보안의 필요성이 나타나고 있다. 이러한 문제점은 임베디드 시스템에 들어가는 소프트웨어의 역공학으로부터 초래된다. 따라서 본 논문은 소스 코드에 대해 제어 흐름 평탄화라는 난독화 알고리즘을 설계하는 방법을 제안한다. 이는 독자적으로 작성된 난독화 알고리즘이기 때문에 오픈 소스로 공개되어져 있는 다른 난독화 도구들에 비해 안전한 특징을 가진다. 제어 흐름 평탄화는 프로그램의 기능을 유지하면서 소스 코드의 정적 분석을 어렵게 하는 기법으로, 데이터를 탈취하려는 악의적인 행위를 사전에 예방할 수 있다. 본 논문에서 제안하는 제어 흐름 평탄화 알고리즘은 하나의 기본 블록으로 이루어진 단순한 소스 코드를 여러 개의 기본 블록으로 분할하고, 조건문을 통해 연결하는 방법을 사용하여 알고리즘의 복잡도를 높였다. 이처럼 새롭게 작성된 Pass를 통해 소스코드 난독화를 적용시켜 임베디드 시스템의 보안성을 향상시킬 수 있다.

Security Verification of Korean Open Crypto Source Codes with Differential Fuzzing Analysis Method (차분 퍼징을 이용한 국내 공개 암호소스코드 안전성 검증)

  • Yoon, Hyung Joon;Seo, Seog Chung
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.30 no.6
    • /
    • pp.1225-1236
    • /
    • 2020
  • Fuzzing is an automated software testing methodology that dynamically tests the security of software by inputting randomly generated input values outside of the expected range. KISA is releasing open source for standard cryptographic algorithms, and many crypto module developers are developing crypto modules using this source code. If there is a vulnerability in the open source code, the cryptographic library referring to it has a potential vulnerability, which may lead to a security accident that causes enormous losses in the future. Therefore, in this study, an appropriate security policy was established to verify the safety of block cipher source codes such as SEED, HIGHT, and ARIA, and the safety was verified using differential fuzzing. Finally, a total of 45 vulnerabilities were found in the memory bug items and error handling items, and a vulnerability improvement plan to solve them is proposed.

PMI Based Software Development Model for Open Source Software (오픈소스 소프트웨어를 위한 PMI 기반의 소프트웨어 개발 모델)

  • 정은주;최정필;신성욱;정동원
    • Proceedings of the Korea Society for Simulation Conference
    • /
    • 2004.05a
    • /
    • pp.36-40
    • /
    • 2004
  • 오픈소스 소프트웨어란 소스 코드를 공개한 상태로 공급되는 소프트웨어를 말한다. 오픈소스 소프트웨어의 개발 방법은 오픈소스 소프트웨어 프로젝트에 관심이 있는 개발자의 자발적인 참여로 이루어진다. 오픈소스 소프트웨어 개발 방식은 대부분 소프트웨어개발 방법론적인 측면이 적용되지 않기 때문에 일반적인 소프트웨어에 비해서 신뢰성이 떨어진다는 평가를 받는 원인이 되고 있다. 또한 일반 소프트웨어 개발과 비교해서 분산된 개발자들의 소스 공유 및 의견 교환과 합의 도출 방법이 필요하기 때문에 오픈소스 소프트웨어 개발에 일반적인 소프트웨어 개발 방법론을 적용할 수가 없다. 따라서 일반적인 소프트웨어 개발 방법과 프로젝트 관리 기법에서 공개 소프트웨어 개발을 위해 필요한 부분들을 도출하여 오픈소스 소프트웨어 개발에 적용할 수 있도록 커스터마이징한 오픈소스 소프트웨어를 위한 소프트웨어 개발 모델을 제안한다.

  • PDF

A Study on Source Code vulnerability detection Scheme using Symbol-based Static Analysis System (기호 기반 정적 분석 시스템을 이용한 소스코드 취약점 탐지 기법 연구)

  • Kim, Hyungjoo;Kim, Mansik;Lee, Jaeseung;Kang, Jungho
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2015.10a
    • /
    • pp.824-826
    • /
    • 2015
  • 최근 IT 산업의 발달로 다양한 분야에서 소프트웨어 활용이 증가하였으며, 이에 따라 공개 오픈소스 소프트웨어의 사용빈도가 증가하고, 다양한 범위에서 활용되고 있다. 하지만, 공개 오픈소스의 이용이 증가함에 따라, 공개 오픈소스 취약점에 기반한 다양한 문제에 노출될 수 있으며, 실제 'OpenSSL'의 하트블리드 취약점은 전세계적으로 많은 피해를 야기시켰다. 따라서, 기존 오픈 소스 취약점 분석 환경에서 기호 기반의 취약점 분석 방법을 이용하여 오탐 및 미탐을 최소화 하고, 정확한 보안약점 탐지 가능 기법을 제안한다.