• 제목/요약/키워드: Source Code

검색결과 1,246건 처리시간 0.028초

안드로이드 앱 변조 방지를 위한 APK 덮어쓰기 기법 (An APK Overwrite Scheme for Preventing Modification of Android Applications)

  • 최병하;심형준;이찬희;조상욱;조성제
    • 한국통신학회논문지
    • /
    • 제39B권5호
    • /
    • pp.309-316
    • /
    • 2014
  • 안드로이드 앱(Android app, APK)을 역공학하여 디컴파일된 소스 코드를 획득하는 것이 용이하다. 공격자는 디컴파일된 소스코드를 불법적으로 사용하여 경제적 이득을 얻거나 악성코드를 삽입하여 앱을 변조하기도 한다. 이러한 문제를 해결하기 위해, 본 논문에서는 역공학 방지 방법을 사용하여 안드로이드 앱에 대한 불법 변조를 방지하는 APK 덮어쓰기 기법을 제안한다. 연구 대상은 임의 프로그래머에 의해 작성된 앱들이다. '대상 앱'(원본 앱)에 대해, 서버 시스템은 (1) 대상 앱의 복사본 생성, (2) 그 대상 앱을 암호화, (3) 복사본의 DEX (Dalvik Executable) 부분을 스텁(stub) DEX로 교체하여 스텁 앱 생성, (4) 암호화된 대상 앱 및 스텁 앱을 배포한다. 스마트폰 사용자는 암호화된 대상 앱 및 스텁 앱을 다운받는다. 스텁 앱이 스마트폰에서 실행될 때마다, 스텁 앱은 런처(launcher) 앱과 협력하여 암호화된 대상 앱을 복호화한 후 자신을 덮어쓰게 하여 원본 대상 앱이 실행되게 한다. 실행이 끝나면 복호화된 앱은 삭제된다. 제안 기법의 가능성을 검증하기 위해 여러 대중적인 앱들로 실험하여 보았다. 실험 결과, 제안 기법이 안드로이드 앱에 대해 역공학 및 변조 공격을 방지하는데 효과적임을 알 수 있다.

가상 컴파일러 기술을 통한 실습 형 프로그래밍언어 e-learning 콘텐츠 (Compiler technology training through a virtual e-learning content programming language)

  • 이호진;강희수;윤준수;문일영
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2014년도 춘계학술대회
    • /
    • pp.867-870
    • /
    • 2014
  • 현재 수많은 대학 및 각종 교육기관에서의 e-learning 교육 시스템이 실행되고 있다. 또한 그 필요성이 대두되고 있다. 하지만 기존 e-learning 시스템은 많은 문제를 가지고 있다. 우선 이론 중심 교육방법이 각 대학 및 교육기관들이 e-learning 시스템을 도입하기에 가장 큰 걸림돌이 되고 있다. 또한 학생들의 참여를 유도 할 수 없는 단방향의 강의가 문제이다. 본 논문에서는 이러한 이론중심 및 단방향 강의 시스템을 극복하고자 실습 형 프로그래밍 언어 e-learning 콘텐츠를 개발할 것이다. 소켓통신과 멀티스레드를 이용하여 웹 브라우저 환경에서 서버 측 컴파일러를 통해 클라이언트 측에 별도로 프로그램 설치 및 환경 설치 없이 환경 제약이 없는 학습이 가능하다. 실습 형 콘텐츠는 프로그래밍 언어를 학습자로 하여금 직접 클라이언트 측 웹 브라우저에서 소스 코드를 입력하여 강의를 이끌어가는 방식이다. 학습자가 입력한 소스 코드에 대한 컴파일은 서버 측 컴파일러에서 실행하여 결과를 학습자에게 제공한다. 때문에 실습 형 e-learning 콘텐츠는 향후 e-learning 시스템 발전에 큰 기여를 할 것이다.

  • PDF

바이너리 분석을 통한 UNIX 커널 기반 File System의 TOCTOU Race Condition 탐지 (Detecting TOCTOU Race Condition on UNIX Kernel Based File System through Binary Analysis)

  • 이석원;김문회;오희국
    • 정보보호학회논문지
    • /
    • 제31권4호
    • /
    • pp.701-713
    • /
    • 2021
  • Race Condition은 둘 이상의 프로세스가 하나의 공통 자원에 대해 입력이나 조작이 동시에 일어나 의도치 않은 결과를 가져오는 취약점이다. 해당 취약점은 서비스 거부 또는 권한 상승과 같은 문제를 초래할 수 있다. 소프트웨어에서 취약점이 발생하면 관련된 정보를 문서화하지만 종종 취약점의 발생 원인을 밝히지 않거나 소스코드를 공개하지 않는 경우가 있다. 이런 경우, 취약점을 탐지하기 위해서는 바이너리 레벨에서의 분석이 필요하다. 본 논문은 UNIX 커널기반 File System의 Time-Of-Check Time-Of-Use (TOCTOU) Race Condition 취약점을 바이너리 레벨에서 탐지하는 것을 목표로 한다. 지금까지 해당 취약점에 대해 정적/동적 분석 기법의 다양한 탐지 기법이 연구되었다. 기존의 정적 분석을 이용한 취약점 탐지 도구는 소스코드의 분석을 통해 탐지하며, 바이너리 레벨에서 수행한 연구는 현재 거의 전무하다. 본 논문은 바이너리 정적 분석 도구인 Binary Analysis Platform (BAP)를 통해 Control Flow Graph, Call Graph 기반의 File System의 TOCTOU Race Condition 탐지 방법을 제안한다.

모의실험을 통한 역 RZ 부호로 코딩된 하향신호의 재변조를 이용한 5Gbps/1.25Gbps WDM/TDM 하이브리드 수동 광가입자 망의 성능분석 (Performance Analysis of 5Gbps/1.25Gbps WDM/TDM Hybrid Passive Optical Network with Inverse Return to Zero(RZ) coded Downstream and NRZ upstream re-modulation by Performing Simulation with MATLAB)

  • 박상조
    • 한국컴퓨터정보학회논문지
    • /
    • 제17권8호
    • /
    • pp.51-60
    • /
    • 2012
  • 역 RZ 부호로 코딩된 하향신호의 재변조를 이용한 5Gbps/1.25Gbps WDM/TDM 하이브리드 PON 구조를 제안하고, 매트랩을 이용한 모의실험을 통하여 성능을 분석한다. 모의실험을 통하여 OLT와 ONU간 거리가 10km이고 오차율이 $10^{-9}$일 경우OLT에서의 광송신출력이 각각 -3.8, -0.9dBm 이상이면 OLT에 있는 1개의 OLT가 각각 8, 16개의 ONU와 접속이 가능함을 알 수 있다. 제안된 WDM/TDM 하이브리드 PON 시스템은 일반적인 TDM PON에서 ONU 수에 비례하여 시분할로 다중된 상향채널의 속도가 증가하게 되어 가입자에서 송신하는 상향채널의 데이터 속도가 제한을 받을 수 있는 문제점을 해결할 수 있고, ONU에서 광원 및 OLT에서 광파장 제어회로를 제거할 수 있어 비대칭 광가입자망에 유용한 방식임을 알 수 있다.

무선센서네트워크 환경에서 생체기반의 개선된 사용자 인증 프로토콜 (A Robust Biometric-based User Authentication Protocol in Wireless Sensor Network Environment)

  • 신광철
    • 한국전자거래학회지
    • /
    • 제18권3호
    • /
    • pp.107-123
    • /
    • 2013
  • 무선센서 네트워크 환경에서 센서노드들에 대한 식별자 노출을 억제함으로써 익명성을 보장하고 실시간 인증, 인증의 경량화, 동기화 등이 요구되고 있다. 특히 무선 채널상에서 이루어지는 통신은 제3자에 의한 위치정보가 노출되거나 프라이버시 침해 및 보안상의 취약점이 존재한다. 익명성은 유 무선 네트워크 환경에서 중요한 문제로 폭넓게 연구되어왔다. 센서 노드는 노드간의 무선망 구성을 기본으로 하여 계산능력의 제한과 저장장치의 제한, 전력 장치의 소형화가 강조되고 있다. 본 논문에서는 생체기반의 D. He scheme을 개선하여 네트워크 성능 향상과 익명성을 보장하며 URSC(Unique Random Sequence Code)와 가변식별자(variable identifier)를 이용한 실시간 인증 프로토콜을 제안한다.

동일한 경량 컨테이너 구조 환경에서 스프링 2.5와 EJB 3.0의 개발 생산성 비교 (Comparison of Development Productivity of Spring 2.5 and EJB 3.0 with Lightweight Container Architecture)

  • 이명호;한정수
    • 디지털융복합연구
    • /
    • 제10권3호
    • /
    • pp.137-142
    • /
    • 2012
  • 본 논문은 동일한 경량 컨테이너 구조 환경에서 스프링 2.5와 EJB 3.0의 개발 생산성에 대한 지침과 평가 지표를 제공하는데 목적이 있다. 스프링은 경량 컨테이너 아키텍처로 성공적인 오픈 소스 모델로 알려져 있으며, EJB는 엔터프라이즈 환경에서의 표준 프레임워크로 현업에서 가장 많이 사용되고 있다. 그러나 동일한 플랫폼 상에서 스프링 2.5와 EJB 3.0 프레임워크에 대한 성능 평가 연구는 부족하였다. 또한 정량적 분석도 일부분의 LoC(Line of Code) 분석만 시도함에 따라 새로운 사양이 발표됨에도 구체적인 평가 지표와 지침이 부족하여 소프트웨어 생산성의 평가와 프로젝트의 새로운 시도에 제한이 있었다. 따라서 본 연구에서는 동일한 개발 플랫폼 환경을 기반으로 파일럿 시스템을 스프링 2.5와 EJB 3.0 프레임워크에서 설계하고 구현한 후, 개발 플랫폼 환경별 객관적인 소프트웨어 개발 생산성을 비교하고, 표준화에 따른 평가 지표를 제공하고자 한다.

안드로이드 기반 자연과학 교육용 디지털 앱북 개발을 위한 사용자 상호작용 라이브러리 (User Interaction Library for Natural Science Education Digital App-Book on Android Platform)

  • 이강운;백아람;최해철
    • 방송공학회논문지
    • /
    • 제20권1호
    • /
    • pp.110-121
    • /
    • 2015
  • 디지털 앱북은 기존의 전자책에서 발전한 형태의 멀티미디어 콘텐츠로서 동영상, 소리뿐만 아니라 모바일 기기의 센서를 이용한 다양한 상호작용을 지원할 수 있는 장점이 있다. 모바일 기기의 발전으로 이러한 디지털 앱북의 수요는 폭발적으로 증가하고 있지만, 상호작용을 지원하기 위해서는 프로그래밍 제작 노력이 많이 필요하기 때문에 공급이 그 늘어난 수요를 따라가기 힘든 실정이다. 이러한 문제를 해결하고자, 본 논문은 자연과학 교육용 디지털 앱북의 흥미를 느끼게 해주는 핵심 요소인 사용자-기기간 상호작용 기능들을 라이브러리로 구현하고 검증하였다. 제안 라이브러리는 사용자 동작 인식부, 기기 동작부, 콘텐츠 동작부로 구성되며, 각 부의 명령을 조합하여 다양한 상호작용 함수를 제공한다. 이러한 설계는 코드의 재사용성, 개발자의 쉬운 이해와 활용성, 넓은 확장성을 지원할 수 있다. 구현된 라이브러리는 상용화를 위한 자연과학 교육용 디지털 앱북 콘텐츠 제작에 직접 이용되었으며, 그 결과 코드 사용량을 크게 줄이고 개발 시간을 단축함으로써 제작 효율을 높일 수 있었다.

리팩토링을 위한 소프트웨어 메트릭의 베이지안 네트워크 기반 확률적 관리 (Bayesian Network-based Probabilistic Management of Software Metrics for Refactoring)

  • 최승희;이구연
    • 정보과학회 논문지
    • /
    • 제43권12호
    • /
    • pp.1334-1341
    • /
    • 2016
  • 최근 지능형 스마트 디바이스의 눈부신 발전과 사용으로 개발 단계의 소프트웨어 결함 관리의 중요성이 부각되고 있다. 효과적 결함 관리를 위해 소프트웨어 메트릭을 토대로 많은 결함 예측 모델 연구가 수행되고 있지만, 결함 예측 모델 연구 성과가 널리 확산되지는 못하고 있다. 본 논문에서는 결함 존재 유무에 관한 이진적 결함 예측 모델의 제약을 극복할 수 있도록, 베이지안 네트워크 기반 확률적 소프트웨어 메트릭 관리 방법을 제안한다. 제안 모델은 소프트웨어 메트릭을 활용하여 베이지안 네트워크를 구성하고, 이를 토대로 베이지안 추론을 수행하여 리팩토링을 위한 개선점을 식별할 수 있는 모델이다. 코드 리팩토링을 통해 소스 코드가 개선되면 관련 메트릭 측정값 또한 변하게 된다. 제안 모델은 리팩토링을 통한 메트릭의 개선으로 얻을 수 있는 결함 제거 효과를 확률 값으로 제시해준다. 따라서 이진 값 형태의 확정성을 극복할 수 있으며, 불확정적인 확률 값으로 의사결정의 유연성을 확보할 수 있을 것이다.

이종 임베디드 시스템의 멀티태스킹을 위한 MDA(Model Driven Architecture) 기반의 설계 (MDA(Model Driven Architecture) based Design for Multitasking of Heterogeneous Embedded System)

  • 손현승;김우열;김영철
    • 정보처리학회논문지D
    • /
    • 제15D권3호
    • /
    • pp.355-360
    • /
    • 2008
  • 복잡한 임베디드 시스템의 멀티태스킹 지원은 실시간 운영체제가 요구된다. 이종의 임베디드 시스템 개발 환경에서 각각의 시스템에 최적화 된 운영체제와 프로세서를 사용한다. 본 논문에서는 이종 임베디드 시스템 개발 시 기존의 크로스 컴파일러 대신, 운영체제의 API 정보 및 프로세서 레지스터 구성 정보의 UML 프로파일화 방식을 제안한다. 이는 각각의 임베디드 시스템에 적합한 프로파일을 이용해 이종의 시스템 개발 환경을 선택하여 자동 코드 발생을 통해 개발 기간 및 비용을 단축할 수 있다. 적용사례로서 이종 시스템 프로파일 정보를 이용해 이종의 실시간 운영체제 (brickOS와 uC/OS-II) 및 프로세서(Hitachi H8과 Intel PXA255)에 맞는 모델 및 코드를 생성하여 포팅 하였다.

사용자 인터페이스를 위한 MVP기반의 XML 언어 (An MVP-based XML Language for User Interfaces)

  • 최종명;신경희;유재우
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제29권12호
    • /
    • pp.947-956
    • /
    • 2002
  • XML을 이용한 사용자 인터페이스 개발은 플랫폼과 프로그래밍 언어에 독립적이며, 사용자가 배우기 쉽고, 사용하기 쉬운 장점을 가지고 있다. 그러나, 현재까지 개발된 XML 기반 사용자 인터페이스 언어들은 정형화된 모델을 사용하지 않고 있으며, 사용자 인터페이스와 내부 로직의 결합 및 이벤트 처리 부분이 미약한 단점을 가지고 있다. 이러한 문제점을 해결하기 위해서 본 논문에서는 MVP(Model-View-Presenter) 모델을 확장한 EMVP (Extended MVP)를 제시하고, EMVP를 기반으로 사용자 인터페이스를 개발할 수 있는 새로운 XML 응용프로그램인 XUIML을 소개한다. XUIML은 EMVP를 기반으로 인터페이스 형태, 이벤트 처리, 데이타 흐름, 인터페이스와 내부 로직의 결합을 기술할 수 있는 방법을 제공한다 XUIML 시스템은 텍스트 편집기와 그래픽 편집기 및 XUIML을 자바와 C# 코드로 변환할 수 있는 변환기를 제공한다. 한편, XUIML의 그래픽 편집기는 직접 조작 방식을 지원하기 때문에 GUI 디자인 도구와 같은 높은 생산성을 얻을 수 있다.