• 제목/요약/키워드: 소스 공개 코드

검색결과 102건 처리시간 0.035초

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

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

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

  • 김형종;이동섭;차병래
    • 한국콘텐츠학회논문지
    • /
    • 제6권4호
    • /
    • pp.29-37
    • /
    • 2006
  • 지적재산권 제도는 과거 산업사회의 태동과 발전과정에서 뿐만 아니라, 21세기 정보화 사회의 발전에 있어서도 중요한 역할을 하고 있다. 우리나라의 국가 경쟁력 제고를 위해서도 디지털콘텐츠에서 확대하여 프로그램 소스 코드에 대한 지적재산권 제도와 기술의 정비는 매우 중요한 의미를 지닌다. 프로그램 소스 코드의 소유권 분쟁이 발생시 소유권을 증명하기 위해서는 원본의 프로그램 소스코드를 공개해야만 하는 문제점을 갖고 있다. 본 논문에서는 프로그램 소스코드의 원본 공개로 인한 저작권 침해와 기술 유출을 막기 위한 프로그램 소스코드의 디지털 라이센스 방식을 설계 및 시뮬레이션한다.

  • PDF

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

  • 최성하;이현영;조승민;박희완
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 춘계학술발표대회
    • /
    • 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)

  • 장석준;김수현;이임영
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2023년도 추계학술발표대회
    • /
    • pp.314-316
    • /
    • 2023
  • 최근 수많은 오픈소스로 공개되면서, 대부분의 소프트웨어가 오픈소스를 활용하여 구현되고 있다. 하지만, 오픈소스에 적용되어 있는 라이선스 간의 충돌 문제가 발생하면서, 라이선스 위반 문제가 지속적으로 발생하고 있다. 이러한 문제를 사전에 방지하기 위해 소스코드 분석이 필수적이지만, 다양한 기능이 실행되는 소스코드 특성 상 소스코드만 봤을 경우 직관적으로 분석이 어렵다는 문제점이 있다. 최근 소스코드의 효과적인 분석을 도와주는 다양한 도구들이 개발되었고, 그 중 한 가지 방법은 소스코드를 그래프로 변환하여 시각적인 편의성을 제공하는 방법이다. 그래프로 변환된 소스코드는 해당 시점에는 분석이 가능하지만, 분석이 필요할 때마다 변환을 해야 하는 문제점이 존재한다. 따라서 소스코드를 변환한 그래프 데이터를 저장하는 방법이 요구되었는데, 그래프 데이터베이스의 경우 특정 파일 형식만 지원하기 때문에 그래프 데이터 저장에 어려움이 존재한다. 본 제안방식에서는 소스코드를 변환한 그래프 데이터를 그래프 데이터베이스에 효과적으로 저장하고, 분석이 요구될 때마다 데이터베이스 상에서 즉각적으로 분석이 가능한 방법을 제안한다.

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

  • 최윤석;박상훈;김경탁
    • 한국수자원학회:학술대회논문집
    • /
    • 한국수자원학회 2018년도 학술발표회
    • /
    • 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)

  • 송준호;박재표;권현수;전문석
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 추계학술발표대회
    • /
    • pp.794-796
    • /
    • 2015
  • 본 연구는 소프트웨어의 소스코드를 대상으로 보안 취약성을 자동으로 평가할 수 있는 방안을 연구하여 소프트웨어 취약점 관리의 자동화 기술 아키텍처를 제안한다. IT가 생활환경의 기반기술로 보급화 되며 소프트웨어시장이 가파르게 성장하고 있다. 영리 소프트웨어의 경우 개발기관에서 관리 및 지원을 하지만, 오픈소스 소프트웨어는 비영리 목적과 개발환경으로 인해 체계적으로 관리되기가 어려워 취약점이 발생하기 쉽다. 그럼에도 비용과 효율의 문제로 오픈소스가 광범위하게 활용되고 있어, 오픈 소스 소프트웨어를 도입한 기관 및 단체에 침해를 유발하고, 보안수준을 악화시키고 있다. 이에 오픈 소스 소프트웨어는 소스코드가 공개되는 소프트웨어라는 점을 활용하여 소스코드 수준에서의 취약점 관리 자동화를 지원함으로써, 오픈소스 소프트웨어를 활용하는 분야의 보안 환경을 안전하게 향상시킬 수 있다.

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

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

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

  • 윤형준;서석충
    • 정보보호학회논문지
    • /
    • 제30권6호
    • /
    • pp.1225-1236
    • /
    • 2020
  • 퍼징은 예상되는 범위를 벗어난 입력값을 무작위로 생성해 소프트웨어를 동적으로 테스팅 하는 방법으로, 취약점 분석을 자동화하기 위해 주로 쓰인다. 현재 한국인터넷진흥원에서는 국내 표준 암호 알고리즘들에 대한 소스코드를 공개하고 있으며, 많은 암호모듈 개발업체들이 이 소스코드를 이용하여 암호모듈을 개발하고 있다. 만약 이러한 공개 소스코드에 취약점이 존재할 경우, 이를 참고한 암호 라이브러리는 잠재적 취약점을 가지게 되어 향후 막대한 손실을 초래하는 보안 사고로 이어질 수 있다. 이에 본 연구에서는 SEED, HIGHT, ARIA와 같은 블록암호 소스코드의 안전성을 검증하기 위한 적절한 보안 정책을 수립하였고, 차분 퍼징을 이용해 안전성을 검증하였다. 최종적으로 스택 버퍼 오버플로우와 널 포인터 역참조를 포함하는 메모리 버그 항목과 오류 처리 항목에서 총 45개의 취약점을 발견하였으며, 이를 해결할 수 있는 취약점 개선 방안을 제시한다.

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

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

  • PDF

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

  • 김형주;김만식;이재승;강정호
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 추계학술발표대회
    • /
    • pp.824-826
    • /
    • 2015
  • 최근 IT 산업의 발달로 다양한 분야에서 소프트웨어 활용이 증가하였으며, 이에 따라 공개 오픈소스 소프트웨어의 사용빈도가 증가하고, 다양한 범위에서 활용되고 있다. 하지만, 공개 오픈소스의 이용이 증가함에 따라, 공개 오픈소스 취약점에 기반한 다양한 문제에 노출될 수 있으며, 실제 'OpenSSL'의 하트블리드 취약점은 전세계적으로 많은 피해를 야기시켰다. 따라서, 기존 오픈 소스 취약점 분석 환경에서 기호 기반의 취약점 분석 방법을 이용하여 오탐 및 미탐을 최소화 하고, 정확한 보안약점 탐지 가능 기법을 제안한다.