임경환.hwp
|
|
- 보영 여
- 6 years ago
- Views:
Transcription
1 643 Journal of The Korea Institute of Information Security & Cryptology ISSN (Print) VOL.28, NO.3, Jun ISSN (Online) 자마린으로개발된안드로이드앱의정적분석연구 * 임경환, 김규식, 심재우, 조성제 단국대학교컴퓨터학과 A Static Analysis Technique for Android Apps Written with Xamarin* Kyeong-hwan Lim, Gyu-sik Kim, Jae-woo Shim, Seong-je Cho Dept. of Computer Science and Engineering, Dankook University 요 약 자마린은대표적인크로스플랫폼개발프레임워크로, 안드로이드, ios, 또는 Windows Phone 등의여러플랫폼을위한모바일앱을 C# 으로작성하게해준다. 모바일앱개발자들은기존의 C# 코드를재사용하고여러플랫폼간에상당한코드를공유할수있어개발시간과유지보수비용을줄일수있다. 한편, 멀웨어작성자들또한자마린을이용하여악성앱제작시간과비용을최소화하면서더많은플랫폼에악성앱을전파할수있다. 이에대응하기위해서자마린으로작성된멀웨어를분석하고탐지하는방안이필요하다. 그러나현재자마린으로작성된앱에대한분석방법에대한연구가많이이루어지고있지않다. 이에본논문에서는자마린으로개발된안드로이드앱의구조를파악하고앱코드를정적으로분석하는기법을제안한다. 또한, 코드난독화가적용된앱에대해서도정적으로역공학하는방법을보인다. 자마린으로개발된앱은자바바이트코드, C# 기반의 DLL 라이브러리, C/C++ 기반의네이티브라이브러리로구성되어있으며, 이들서로다른유형의코드들에대한정적역공학기법에대해서연구하였다. ABSTRACT Xamarin is a representative cross-platform development framework that allows developers to write mobile apps in C# for multiple mobile platforms, such as Android, ios, or Windows Phone. Using Xamarin, mobile app developers can reuse existing C# code and share significant code across multiple platforms, reducing development time and maintenance costs. Meanwhile, malware authors can also use Xamarin to spread malicious apps on more platforms, minimizing the time and cost of malicious app creation. In order to cope with this problem, it is necessary to analyze and detect malware written with Xamarin. However, little studies have been conducted on static analysis methods of the apps written in Xamarin. In this paper, we examine the structure of Android apps written with Xamarin and propose a static analysis technique for the apps. We also demonstrate how to statically reverse-engineer apps that have been transformed using code obfuscation. Because the Android apps written with Xamarin consists of Java bytecode, C# based DLL libraries, and C/C++ based native libraries, we have studied static reverse engineering techniques for these different types of code. Keywords: Xamarin framework, Android app, Cross-platform, Static analysis, Intermediate Language 서론 1) Received( ), Modified( ), Accepted( ) * 본논문은 2017 년도동계학술대회에발표한우수논문을개선및확장한것으로 2017 년도정부 ( 미래창조과학부 ) 의재원으로한국연구재단기초연구사업의지원을받아수행된연 구임 (No. 2015R1A2A1A ) 그리고산업통상자원부 (MOTIE) 와한국에너지기술평가원 (KETEP) 의지원을받아수행한연구과제임 (NO ) 주저자, limkh120@dankook.ac.kr 교신저자, sjcho@dankook.ac.kr(corresponding author)
2 644 자마린으로개발된안드로이드앱의정적분석연구 I. 서론최근하나의프로그램을개발하여여러플랫폼에서수행할수있게해주는, 크로스플랫폼개발프레임워크 (cross-platform development framework) 의사용이증가하고있다 [1-4]. 대표적인크로스플랫폼개발프레임워크로는자마린 (Xamarin), 유니티 (Unity), PhoneGap, Appcelerator Titanium, Sencha 등이있다. 이러한프레임워크는모바일앱의개발생명주기동안개발비용및시간, 유지보수등의면에서효율성을증대시켜준다. 즉, 안드로이드, ios, 윈도우폰 (Windows Phone), 타이젠 (Tizen) 등의여러모바일플랫폼들이경쟁하고있는현재, 특정플랫폼을위한네이티브앱 (native app) 을개별적으로개발하는것은개발비용을크게증가시킨다. 안드로이드는 Java, ios는 Objective-C 와같이특정플랫폼은전용프로그래밍언어및개발도구를필요로하며, 업데이트나버그수정과같은유지보수비용도매우비싸다. 특정모바일플랫폼의프로그래밍언어와 API로개발된네이티브앱은해당플랫폼의기능을충분히활용할수있는반면, 다른플랫폼에서는수행되기어렵다. 이러한상황에서특정플랫폼에독립적인모바일크로스플랫폼도구가주목받고있다. 자마린 (Xamarin) 은대표적인모바일크로스플랫폼프레임워크로, 안드로이드, ios, 또는윈도우폰등의여러플랫폼을위한모바일앱을 C# 으로작성하게해준다 [1-4]. 자마린을이용할경우, C# 프로그래머들은특정플랫폼용프로그래밍언어를익힐필요없이모바일앱을즉시개발할수있으며, 기존의 C# 코드를재사용하고다른플랫폼간에상당한코드를공유할수있다 년기준자마린웹사이트에의하면, 90만명의개발자들이크로스플랫폼앱들을개발하기위해자마린도구를사용하고있다 [1]. 한편, 공격자들도멀웨어제작시간을최소화하면서최대의공격효과를내려고자마린을악용한다고알려져있다 [5]. C# 으로악성앱들을더빨리제작하거나기존의악성코드를재활용하여더많은플랫폼에효과적으로전파할수있기때문이다. 백신우회용악성실행파일을제작하는공격도구들의집합인 Veil-Framework 에서는, 악성페이로드를 C# 으로개발하였다. 실제인터넷을검색하여보면 C# 으로 키로거 (keylogger) 를작성하는방법, C# Crypto-Ransomware 작성및 DDoS 멀웨어관련유투브영상, C# 으로콘솔기반의트로이목마를작성하는튜토리얼, C# Nemesis.Worm 등을접할수있다. Mylonas[6, 7] 등은실험을통해학생들이 C# 을이용하여윈도우모바일 (Windows Mobile) 에서는이틀만에, 윈도우폰에서는하루만에악성앱을제작할수있음을보였다. 이처럼 C# 코드기반의악성앱들이도입되고있지만, C# 코드로제작된악성앱에대한효과적분석기법은연구된바가없다. 이에본논문에서는자마린으로개발된안드로이드앱을정적으로역공학하는방법을제안한다. 또한실험에서는, 난독화기법을포함시켜 C# 앱을재패키징한후, 이를역공학해보임으로써제안방법의실효성을보인다. 본논문의구성은다음과같다. 2장에서는관련연구에대해기술한다. 3장에서는자마린프레임워크및자마린으로개발된앱의실행환경인모노런타임 (Mono runtime) 에설명한다. 4장에서는자마린으로개발된안드로이드앱에대한정적분석기법을기술하면서, 네이티브앱을정적분석하는방법과의차이점에대해살펴본다. 5장에서는역공학방해요소가적용된앱을분석하는방법에대해논의하고 6장에서결론을맺는다. II. 관련연구자마린이지원하는모노 (Mono) 는크로스플랫폼앱을개발하도록해주는.NET 프레임워크용최초의오픈소스다 [5]. 이프로젝트는자마린의후원을받아리눅스, 윈도우, Mac OS X에설치될수있다. 모노에서개발된프로젝트는 MoMA (Mono Migration Analyzer) 을사용하여한플랫폼에서다른플랫폼으로이식될수있으며, MoMA 는자동화된도구로자마린앱들의생산성을증대시켜줄수있다. 자마린을이용하면, C# 으로작성된앱들이안드로이드, ios, Mac OS X 상에서동일코드를공유할수있다. Mylonas[6, 7] 등은대표적인스마트폰플랫폼들의보안수준을비교평가하기위해, 대상플랫폼들에서일반프로그래머들이멀웨어를제작할수있는지, 제작할수있다면얼마나작성이용이한지를실험하였다. 실험에서프로그래머들은스마트폰플랫폼에서제공된개발도구와프로그래밍라이브러리를
3 정보보호학회논문지 ( ) 645 사용하여, 안드로이드에서는 Java 언어를사용하여 12시간만에멀웨어를제작할수있었다. ios에서는 Objective-C 를사용하여 7일만에멀웨어를제작하였고, Windows Mobile 6에서는 C# 을이용해이틀만에멀웨어를제작하였다, Windows Phone 7에서는 C# 프로그래밍경험을가진학부생이하루만에멀웨어를제작하였다. Boushehrinejadmoradi[2] 등은 X-Checker 라는테스팅도구를개발하여, 홈플랫폼 API를가지고동일기능을제공하는타깃플랫폼 API로변환할때발생할수있는비일치오류를조사하였다. 실험결과, 자마린에서 Windows Phone API와안드로이드 API의구문변환시에 47개의버그를탐지하였다. Martinez[3] 등은크로스플랫폼모바일앱개발프레임워크를사용하여개발된모바일앱들의품질을분석하였다. 즉, 자마린과같은크로스컴파일프레임워크를사용해작성된앱들의개발및유지보수과정을, 버그탐지및정정에초점을두고평가하였다. 여러논문들이악성앱개발용이성과버그탐지ᐧ 정정에대해연구하였지만, 자마린에서 C# 으로개발된앱에대한체계적인역공학분석연구는현재까지수행된바가없다. 본연구는자마린에서 C# 으로개발된안드로이드앱을대상으로정적역공학분석연구를진행한다. 있는코드로번역된다면, 소스코드번역기는런타임구성요소 (Runtime element) 와결합될수있다. 자마린으로개발된앱의개요가 Fig. 1. 에나타나있다. 자마린으로안드로이드앱을개발할경우, C# 이번역되어 IL(Intermediate Language) 코드가생성되며해당 IL 코드를실행하기위한모노환경과 IL 코드를위한 JIT(Just-In-Time) 컴파일기능을포함하여앱을생성하게된다. 자마린으로개발된앱을역공학하기위해서는컴파일과정과실행파일구조, 런타임동작원리를파악할필요가있다. 자마린의 C# 컴파일러를통해생성된 IL 코드는 Java 의바이트코드에대응되며, CLR (Common Language Runtime) 의 JIT 컴파일을통해기계어로변환된다 [5]. IL 코드는.NET PE 파일의포맷을갖고있으며 PE 포맷의구성은 Fig. 2. 와같다. 이러한앱의기능및동작과정을파악하기위해서 PE 파일포맷을갖는 DLL 파일들을정적역공학해야한다. III. 자마린및모노런타임환경 3.1 자마린개요 Fig. 1. Procedure of Xamarin app development [2] 2016 년마이크로소프트는닷넷프레임워크를다른외부플랫폼으로이식하기위해, 모노프로젝트 (Mono Project) 기반으로개발된자마린크로스플랫폼개발환경을무료로제공하고있다. 자마린은닷넷프레임워크와 C# 언어를이용하여안드로이드, 윈도우폰, ios와같은다양한모바일플랫폼에서동작할수있는앱을개발하게해준다. 자마린은크로스플랫폼개발프레임워크 [2] 또는소스코드번역기 (Source code translator)[1] 로, 주어진소스코드를크로스컴파일하여, 컴파일된코드를다른플랫폼들에서수행하게해준다. 소스코드는플랫폼의네이티브언어 (native language) 또는실행가능한바이트코드로변환된다. 소스코드가런타임환경 (Runtime environment) 에의해실행될수 Fig. 2. Format of.net PE files[5]
4 646 자마린으로개발된안드로이드앱의정적분석연구 3.2 모노런타임환경 IV. 자마린앱에대한정적역공학방법 자마린으로개발된앱들의경우, 소스코드로부터 IL 코드가생성되고, 생성된 IL 코드는 CLR 환경에서특정플랫폼에맞는네이티브코드로변환되어실행된다. 자마린을통해개발된 C# 기반의안드로이드앱도컴파일후 IL 코드형태로 DLL 파일에존재한다. 이안드로이드앱은 CLR 역할을하는모노런타임을통해실행되며기존의안드로이드실행환경인 DVM(Dalvik Virtual Machine) 또는 ART(Android Runtime) 과함께상호작용한다. 모노런타임이포함된안드로이드실행구조가 Fig. 3. 에나타나있다 [8]. 모노런타임에서제공되는.NET API는 XML, DB, 직렬화 (Serialization), 입출력, 스트링 (String), 네트워킹 (Networking) 기능들을제공한다 [9]. 하지만안드로이드 OS가제공하는 Audio, Telephony, OpenGL 기능등은안드로이드 SDK 또는자바 API로만접근이가능하다. 따라서모노런타임과안드로이드실행환경이서로통신해야할필요가있다. 이를위해, 자마린은 Managed Callable Wrappers(MCW) 를제공한다. MCW는 C# 코드에서 Java 코드를호출해야할때사용되는자바네이티브인터페이스 (JNI) 브릿지로 Binding Library 형태로제공하고있다. Binding Library 는 C# 코드에서자바코드를호출할수있도록자바라이브러리에대한 C# Wrapper 를생성하고이를 C# 에서호출하는방식을이용하고있다. 반대로안드로이드런타임에서 C# 코드를호출하기위해서 Android Callable Wrappers(ACW) 를제공하고있다. 이장에서는자마린으로개발된안드로이드앱의구조를분석하고, 정적으로역공학하는방법을기술한다. 본논문에서는자마린에서 C# 으로개발된안드로이드앱을 자마린앱 이라고부른다. 4.1 자마린앱의구조기존의 Java 언어로작성된안드로이드네이티브앱과비교하여보면, 자마린앱에는 assemblies 폴더와 lib 폴더가추가로구성된다. Fig. 4. 는마켓에배포되고있는 Snap Attack 이라는자마린앱의구조를보여준다. 해당앱을압축해체후살펴보면 assemblies 폴더에는 DLL 파일들이존재하는데, 이 DLL은 C# 코드로부터번역된 IL 코드가존재한다. lib 폴더에는 C/C++ 기반의네이티브라이브러리인 so 파일들, 즉모노런타임환경을제공하기위한라이브러리들이존재한다. assemblies 폴더의파일들은안드로이드 MainActivity, Java 코드에서 C# 코드를호출할수있게해주는 JNI, 안드로이드 API에대한 C# 바인딩, 암호화관련 API, 파일입출력기능등을제공하며, lib는모노런타임환경과 JIT 컴파일기능등을제공한다. 각파일들의주요기능은 Table 1. 과같다. Fig. 4. The structure of the xamarin app (Snap Attack) Fig. 3. Android execution environment including Mono runtime [8]
5 정보보호학회논문지 ( ) 647 Table 1. Main features of files included in Xamarin app Folder name /Assembl ies /lib File name Description SnapAttack Compilation results of C Android.dll # developer code - Providing C # binding functionality for the Mono.Andr Android API oid.dll - Supporting for namespaces such as Java.Lang and Java.Net Mono.secu rity.dll Java.Inter op.dll Providing Cryptographic API Providing JNI functionality to call C # code from Java System.*.d File I / O function ll libmonodroi Providing a mono runtime d.so environment libmonosgen-2.0.so Providing JIT function 4.2 자마린앱에대한정적분석기법 정적역공학은실행코드를역어셈블 (disassemble) 하거나역컴파일 (decompile) 하는 과정을포함한다. 자마린앱의경우, 실행파일은 Java 바이트코드,.NET 프레임워크의 IL 코드를포함한 DLL 파일, 네이티브라이브러리인 so 모듈 (C/C++ 기반바이너리코드 ) 들로구성된다. 서로다른언어로개발된코드를역공학하기위해서각실행코드에적합한역공학도구를사용해야한다. 앱의바이트코드를자바소스코드로역컴파일하기위해무료도구인 Jadx[10] 나상용도구인 JEB[11] 를사용할수있다. 또한 IL코드로구성된 DLL 파일을.NET 기반 C# 코드로역컴파일하기위해서는무료도구인 ILSpy[12] 나상용도구인.NET Reflector[13] 를사용할수있다. 라이브러리인 so 파일을어셈블리나 C 기반의사코드로역공학하기위해서는 IDA pro[14] 를사용할수있다. 자마린앱의구성모듈별필요한정적역공학도구는 Fig. 5. 와같다. 자마린앱을정적으로분석하기위한절차는 Fig. 6. 과같이크게 4단계로나눌수있다. 가장먼저분석대상 DLL 파일을파악해야한다. 이를위해서자마린앱내에있는 DEX 파일을역공학하여 DEX 파일내존재하는 MonoPackageManager_Resources 클래스를분석해야한다. 해당클래스는개발자가작성한 DLL 파일과서드파티라이브러리리스트들을 Assemblies 배열에저장하고있다. 배열에저장된 DLL 파일이름들을확인하여분석대상 DLL 파일 Fig. 5. File structure and static analysis tools of a Xamarin app
6 648 자마린으로개발된안드로이드앱의정적분석연구 들을파악할수있다. Fig. 4. 에나타난 Snap Attack 앱의경우 Assemblies 배열첫번째값으로 SnapAttackAndroid.dll 의이름을갖고있다. 해당파일은모노런타임상에서가장먼저실행되는진입점 ( 보통은특정액티비티 ) 을포함하고있다. 다음으로 SnapAttackAndroid.dll에서진입점을파악하기위해서 AndroidManifest.xml을분석해야한다. 일반적인안드로이드앱의진입점은 AndroidManifest.xml 상에서 <action android:name= android.intent.action.main /> 속성을가진액티비티 (Activity) 라고할수있다. Snap Attack 앱의경우해당속성을갖는액티비티는 DEX 파일상의 RootActivity 로자바코드상에서의가장먼저실행되는진입점이다. RootActivity 에는 (C/C++ 로작성된 ) 네이티브함수인 Runtime.register( ) 함수를호출하고있다. 해당코드는 C# 코드로작성된 RootActivity 를등록하는코드로, 등록이완료된후 SnapAttackAndroid.dll 상의 RootActivity 가실행된다. 해당코드는 libmonodroid.so 파일내에네이티브함수인 Java_mono_android_Runtime_register( ) 함수로선언되어있다. 해당함수는호출과정중에 monodroid_runtime_invoke( ) 를호출한다. invoke( ) 함수는인자값으로어셈블리이름, 실행할클래스및메소드이름, 파라미터를요구하며인자값에맞 는어셈블리의코드를실행한다. libmonodroid.so 파일은 IDA Pro를통해서역공학을진행하였다. Fig. 7. 은 Snap Attack 앱의정적역공학과정을그림으로표현한것이다. 해당앱은자바영역에서 Runtime.register( ) 함수와네이티브영역에서 monodroid_runtime_invoke( ) 함수를차례로거쳐모노영역의진입점인 RootActivity.OnCreate( ) 함수가실행된다. 이와같이안드로이드플랫폼에서자마린앱을분석하여본결과, 기존의 Java 로작성된네이티브앱과비교하여차이점은다음 Table 2. 와같다. 자마린앱은네이티브앱과달리 C# 기반 DLL 파일을모노런타임에서실행하면서기존안드로이드런타임과상호작용하는형태로동작된다. 그리고모노런타임을제공하기위해별도의 so 파일을포함하고있다. 따라서자마린앱을정적으로분석하기위해서는 DLL 파일과모노런타임을위한 so 파일을분석하기위한과정이기본적으로필요하다. Table 2. Differences between native and Xamarin apps Files to be analyzed Static analysis tools Native apps - DEX file, - so file (exists if created by the developer) JEB, Jadx, IDA Pro Xamarin apps - DLL files, - DEX file, - so file (exists by default for mono runtime) ILspy, Reflector, JEB, Jadx, IDA Pro V. 정적역공학방해기법및극복 Fig. 6. Static reverse engineering procedures for Xamarin apps Fig. 7. Main control flow in a Xamarin app 이장에서는자마린앱의구성파일중 C# 언어와관련된 DLL 파일에대한코드난독화 (code obfuscation) 기법및이에대한분석기법에대해설명한다. 닷넷프레임워크에서실행되는프로그램을대상으로하는코드난독화도구는공통중간언어 (Common Intermediate Language, CIL) 기반으로적용된다. 관련난독화도구로는 Babel Obfuscator, Aldaray Rummage, Crypto Obfuscator For.Net,.Net Anti-Decompiler, Dotfuscator 등의상용도구와, ConfuserEx, DotRefiner 등의오픈소스프로젝트가있다. 이러
7 정보보호학회논문지 ( ) 649 한난독화도구들은 IL 코드분석을방해ᐧ지연시키기위해다양한데이터 / 코드변환기법들을적용하고있다. 대표적인기법으로덤프방지 (anti-dump), 제어흐름보호기법, 문자열난독화, 리소스암호화등이존재한다. 본논문에서는 Crypto Obfuscator For.Net 도구와 ConfuserEx 도구의난독화기법을자마린앱의 DLL 파일에적용가능한지확인하였다. Table 3은자마린앱에적용가능한 Crypto Obfuscator For.Net과 ConfuserEx 의정적분석방해기법을나타낸다. 두도구들이제공하는정적분석방해기법을, Snap Attack 앱의핵심 DLL 파일인 SnapAttackAndroid.dll 에각기법별로적용하고, APKtool 을이용해재패키징 (repackaging) 하였다. 재패키징한앱을실행한결과, ildasm 1) 사용방지 (Anti ildasm Protection), 심볼이름변경 (Symbol renaming), 제어흐름난독화 (Control flow obfuscation), 문자열암호화 (String encryption) 기법등네가지기법은적용가능했으나, 이외에기법들은적용되지않았다. 2) 자마린앱에적용되지않는기법들의원인을조사해보니 Fig. 8. 과같이공통적으로, DLL 파일내에존재하는클래스인 internal class <Module> 에난독화기법과관련된코드가포함되어있었다. ConfuserEx 에의해 internal class <Module> 에추가되는코드들은윈도우환경에서만동작하도록고안되어있어, 안드로이드환경에서는해당 IL 코드를 JIT 컴파일을제대로수행하지못해, 실행이불가능한것으로보인다. 이에반해, 제어흐름난독화기법등자마린앱에적용가능한기법들은 Fig. 8. Inserted Code after Applying DLL Tamper Protection 1) IL disassembler 를말함 2) Table 3 의 문자열암호화 난독화는 Crypto Obfuscator for.net 도구에서만지원되는기능임 Table 3. Anti-Static Analysis Techniques of ConfuserEx and Crypto Obfuscator For.Net Function Anti ildasm Protection Symbol renaming Control Flow Protection Anti Tamper Protection Anti Debug Protection String Encryption Description prevents the use of iasm.exe, a tool that disassembles DLL files into IL code converts the name of the symbol (symbol) to make it difficult to read the decompiled code modifies the execution flow by changing the code in the method ensures the integrity of your app prevents debugging encrypts all literal strings internal class <Module> 영역에관련코드를추가하지않아안드로이드환경에서도정상적으로실행됨을확인했다. 이에자마린앱에적용가능한 4가지난독화기법들을적용하고이를분석하여정적분석하는방법을실험하였다. 5.1 ILDASM 사용방지및극복방법 IL Disassembler (ILdasm) 는 IL Assembler 의보조도구로서 DLL 파일을역어셈블하여분석가가알아보기쉬운 IL 코드를생성한다. 이도구는윈도우환경개발도구인비주얼스튜디오에서닷넷응용프로그램개발을지원하기위해기본적으로제공된다. ConfuserEx 는 ildasm 의사용을방지하는기법을제공한다. ildasm 사용을방지하는난독화기법이적용된어셈블리를, ildasm 도구의입력으로제공했을때 Fig. 9. 와같은오류문구를출력하게된다. 이난독화기법을확인해보면, Fig. 10. 과같이 DLL 파일내에 ildasm 방지속성인 SuppressIldasmAttribute 속성값을추가하는기능으로만구성되어있다. ildasm 도구는 DLL 파일내에 SuppressIldasmAttribute 속성이존재할경우해당어셈블리를분석하지않는다. 이는높은수준의난독화기법이아니어서, 이를우회하는것이
8 650 자마린으로개발된안드로이드앱의정적분석연구 Fig. 11. Bypassing the SuppressIldasmAttribute attribute 5.2 심볼이름변경및제어흐름난독화의극복 Fig. 9. Applying the ildasm prevention technique Fig. 10. Attribute of SuppressIldasmAttriubute 어렵지않다. SuppressIldasmAttribute 속성이존재하는 DLL 파일을역어셈블하기위하여, 본논문에서 SuppressIldasmAttribute 를무시하고, ildasm 이수행되도록하는두가지방법을찾았다. 첫번째방법은 SuppressIldasmAttribute 속성이적용된어셈블리를 Mono.Cecil 라이브러리를이용해해당속성을제거한어셈블리를재생성하는방법이다. 하지만본방법은윈도우환경에서구동하는어셈블리에는적용이가능하지만, 자마린앱의어셈블리에서는 Mono.Cecil. AssemblyResolutionException 오류로인해어셈블리재생성이불가능하다. 다른방법은 ildasm 도구에대한실행파일을수정하는것이다. ildasm 실행파일은어셈블리를입력값으로하며, 해당어셈블리를 IL 코드로변환해주는기능을하는데 Fig. 11. 과같이어셈블리내에 SuppressIldasmAttribute 가존재할경우이를 Fig. 9. 의오류문구와함께 IL 변환기능을수행하지않는다. 이러한루틴을우회하기위해 ildasm 실행파일내에존재하는 SuppressIldasmAttrib-ute 의텍스트를검색하고이를임의의다른텍스트로수정할경우어셈블리내의 SuppressIldasm-Attribute 속성이존재하더라도어셈블리파일들을 IL 코드로변환할수있다. 심볼이름변경기법은타입, 메소드, 특성, 이벤트, 필드, 네임스페이스및메소드매개변수의이름을분석하기어렵게변경하는것이다. 예로, 오버로딩을이용한메소드이름변경기법, 멤버이름을난독화하면서사용자지정유니코드문자로변경하는기법등이있다. 이기법적용후에는심볼이름이다르게변경되어원래대로역공학되지않는다. 따라서난독화된코드를이해하기어렵게하는효과를가져온다. Fig. 12. 는기존 Snap Attack 앱의어셈블리를난독화한결과이며, 심볼이름들이알아보기힘들게바뀌었다는것을확인할수있었다. 그러나심볼이름변경기법이적용된앱을역공학하여보니, 해당기법은분석가로하여금정적분석을어렵게만들긴하지만, 실제로는분석이가능하여해당앱의구조나실행흐름을파악할수있었다. 자마린앱에적용가능한다른난독화기법으로제어흐름변경기법이있다. 제어흐름변경기법은기존메소드코드에더미코드를삽입하거나, if문, switch 문, for문등을추가하여메소드의실행흐름을변경한다. 이2처럼제어흐름이변경되면코드의양이많아지며의미없는제어흐름이추가되어분석 Fig. 12. Snap Attack app with symbol renaming
9 정보보호학회논문지 ( ) 651 가나공격자로하여금역공학을어렵게할수있다. Snap Attack 앱의어셈블리를대상으로제어흐름난독화를적용한결과, 분석코드의양이원본에비해많아지며제어흐름또한변경되어분석이상대적으로어려워지는것을확인하였다. 그러나난독화가적용되어있음에도불구하고, 결국높은난이도는아니기에조금의수고가더해진다면여전히분석가능한것을확인하였다. 5.3 문자열암호화극복방법 문자열암호화 (string encryption) 기법은암호화알고리즘을이용해소스코드내존재하는문자열들을암호화하여분석하기어려운형태로변경하여준다. 해당기법은 Crypto Obfuscator for.net 도구에서제공되고있다. Fig. 13은문자열암호화적용전 / 후의소스코드를나타낸다. 문자열암호화가적용된코드를분석하기위해서복호화루틴을통해복호화과정을수행해야한다. Crypto Obfuscator for.net 도구는 Fig. 13(b) 의표시된해시값과동일한클래스를생성하여복호화루틴을저장하고있는것을확인하였다. 문자열암호화라는난독화방법을극복하기위해서인터넷에공개된도구를이용하여역난독화 (de-obfuscation) 하였다. de4dot[14] 는오픈소스.Net 역난독화도구로 Crypto Obfuscator for.net 로암호화된문자열을복호화하여준다. 따라서해당도구를이용하여문자열암호화가적용된코드에서난독화가적용되기전의원본코드를획득할수있었다. (a) Before applying string encryption (b) After applying string encryption Fig. 13. Source code before and after applying string encryption VI. 결론본논문에서는 자마린프레임워크에서 C# 으로개발된안드로이드앱 ( 자마린앱 ) 의구조를분석하고 C# 코드를실행하기위한모노런타임환경동작원리를분석하였다. 또한자마린으로개발된안드로이드앱을체계적으로정적분석하는기법에대해제안하였다. 제안기법은소스코드가제공되지않는경우에도적용할수있는기법으로악성자마린앱을분석하는데활용될수있다. 정적분석은주어진코드를실행하지않고제어 데이터흐름이나특정한코드패턴을조사하는것으로, 전체코드를커버하면서분석할수있다. 또한, 실행오버헤드도발생하지않는다. 본논문에서는난독화가적용된앱에대해서도코드를정적으로분석하는실험을수행하였다. 단점으로는패킹되었거나암호화된코드를분석하기어렵다는점이다. 현재자마린앱을대상으로분석기법에대해서는거의연구된것이없다. 본논문에서제시한기법은자마린으로제작된악성앱을분석하기위한체계적인방법으로활용될수있다. 향후에는패킹된자마린앱을분석할수있는동적분석기법, 그리고자마린에서안드로이드바인딩 (Android binding) 을거치지않고악성행위를할수있는요소를도출하고이에대한분석방법에대해서연구할계획이다. References [1] M. Willocx, J. Vossaert, and V. Naessens, A quantitative assessment of performance in mobile app development tools, Mobile Services (MS), 2015 IEEE International Conference on. IEEE, [2] N. Boushehrinejadmoradi, V. Ganapathy, S. Nagarakatte, and L. Iftode, Testing cross-platform mobile app development frameworks (t), In Automated Software Engineering (ASE), th IEEE/ACM International Conference on IEEE, pp , [3] M. Martinez, and S. Lecomte, Towards the quality improvement of cross-
10 652 자마린으로개발된안드로이드앱의정적분석연구 platform mobile applications, In Mobile Software Engineering and Systems (MOBILESoft), 2017 IEEE/ACM 4th International Conference on IEEE, pp , [4] P. Marius, "Considerations Regarding the Cross-Platform Mobile Application Development Process," Academy of Economic Studies. Economy Informatics Vol. 13, no. 1, [5] S. M. Pontiroli and F. R. Martinez, "The Tao of.net and PowerShell Malware Analysis," Virus Bulletin Conference, [6] A. Mylonas, S. Dritsas, B. Tsoumas and D. Gritzalis, "On the feasibility of malware attacks in smartphone platforms," International Conference on E-Business and Telecommunications, [7] A. Mylonas, S. Dritsas, B. Tsoumas and D. Gritzalis, "Smartphone security evaluation The malware attack case," Security and Cryptography (SECRYPT), 2011 Proceedings of the International Conference on. IEEE, [8] R. Mark. Xamarin mobile application development for Android. Packt Publishing Ltd, [9] jadx, [10] JEB, [11] ILspy, /ilspyportable/ [12].NET Reflector, com/products/dotnet-development/refl ector/ [13] IDA Pro, roducts/ida/ [14] de4dot, dot
11 정보보호학회논문지 ( ) 653 < 저자소개 > 임경환 (Kyeonghwan Lim) 학생회원 2015 년 2 월 : 단국대학교컴퓨터학과졸업 2016 년 8 월 : 단국대학교컴퓨터학과석사 2016 년 9 월 ~ 현재 : 단국대학교컴퓨터학과박사과정 < 관심분야 > 모바일보안, 시스템보안 김규식 (Gyoosik Hong) 학생회원 2016 년 2 월 : 단국대학교응용컴퓨터공학과졸업 2018 년 2 월 : 한국대학교컴퓨터학과석사 < 관심분야 > 모바일보안, 시스템보안 심재우 (Jaewoo Shim) 학생회원 2017 년 2 월 : 단국대학교소프트웨어학과졸업 2017 년 3 월 ~ 현재 : 단국대학교컴퓨터학과석사과정 < 관심분야 > 시스템보안, 역공학 조성제 (Seong-je Cho) 종신회원 1989 년 : 서울대학교컴퓨터공학과졸업 1991 년 : 서울대학교컴퓨터공학과공학석사 1996 년 : 서울대학교컴퓨터공학과공학박사 1997 년 3 월 현재 : 단국대학교컴퓨터학과 / 소프트웨어학과교수 < 관심분야 > 시스템보안및악성코드분석, 소프트웨어보증, 시스템소프트웨어, 임베디드소프트웨어등
12
Secure Programming Lecture1 : Introduction
Malware and Vulnerability Analysis Lecture3-2 Malware Analysis #3-2 Agenda 안드로이드악성코드분석 악성코드분석 안드로이드악성코드정적분석 APK 추출 #1 adb 명령 안드로이드에설치된패키지리스트추출 adb shell pm list packages v0nui-macbook-pro-2:lecture3 v0n$
More informationSecure Programming Lecture1 : Introduction
Malware and Vulnerability Analysis Lecture1 Malware Analysis #1 Agenda 악성코드정적분석 악성코드분석 악성코드정적분석 정적분석 임의의코드또는응용프로그램을실행하지않고분석 ASCII 문자열 (ex. URL) API 리스트 Packing VT 기타등등 정적분석 : 파일식별 악성으로의심되는파일의형태식별 file
More information<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>
327 Journal of The Korea Institute of Information Security & Cryptology ISSN 1598-3986(Print) VOL.24, NO.2, Apr. 2014 ISSN 2288-2715(Online) http://dx.doi.org/10.13089/jkiisc.2014.24.2.327 개인정보 DB 암호화
More information°í¼®ÁÖ Ãâ·Â
Performance Optimization of SCTP in Wireless Internet Environments The existing works on Stream Control Transmission Protocol (SCTP) was focused on the fixed network environment. However, the number of
More informationMicrosoft PowerPoint - chap01-C언어개요.pptx
#include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을
More information1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과
1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 학습내용 1. Java Development Kit(JDK) 2. Java API 3. 자바프로그래밍개발도구 (Eclipse) 4. 자바프로그래밍기초 2 자바를사용하려면무엇이필요한가? 자바프로그래밍개발도구 JDK (Java Development Kit) 다운로드위치 : http://www.oracle.com/technetwork/java/javas
More informationAndroid Master Key Vulnerability
Android Master Key Vulnerability Android Bug 8219321 2013/08/06 http://johnzon3.tistory.com Johnzone 内容 1. 개요... 2 1.1. 취약점요약... 2 1.2. 취약점정보... 2 2. 분석... 2 2.1. 기본개념... 2 2.2. 공격방법... 4 3. 방어대책... 7
More information서현수
Introduction to TIZEN SDK UI Builder S-Core 서현수 2015.10.28 CONTENTS TIZEN APP 이란? TIZEN SDK UI Builder 소개 TIZEN APP 개발방법 UI Builder 기능 UI Builder 사용방법 실전, TIZEN APP 개발시작하기 마침 TIZEN APP? TIZEN APP 이란? Mobile,
More informationexample code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for
2003 Development of the Software Generation Method using Model Driven Software Engineering Tool,,,,, Hoon-Seon Chang, Jae-Cheon Jung, Jae-Hack Kim Hee-Hwan Han, Do-Yeon Kim, Young-Woo Chang Wang Sik, Moon
More informationHTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API
WAC 2.0 & Hybrid Web App 권정혁 ( @xguru ) 1 HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API Mobile Web App needs Device APIs Camera Filesystem Acclerometer Web Browser Contacts Messaging
More information<31325FB1E8B0E6BCBA2E687770>
88 / 한국전산유체공학회지 제15권, 제1호, pp.88-94, 2010. 3 관내 유동 해석을 위한 웹기반 자바 프로그램 개발 김 경 성, 1 박 종 천 *2 DEVELOPMENT OF WEB-BASED JAVA PROGRAM FOR NUMERICAL ANALYSIS OF PIPE FLOW K.S. Kim 1 and J.C. Park *2 In general,
More information인문사회과학기술융합학회
Vol.5, No.5, October (2015), pp.471-479 http://dx.doi.org/10.14257/ajmahs.2015.10.50 스마트온실을 위한 가상 외부기상측정시스템 개발 한새론 1), 이재수 2), 홍영기 3), 김국환 4), 김성기 5), 김상철 6) Development of Virtual Ambient Weather Measurement
More information±èÇö¿í Ãâ·Â
Smartphone Technical Trends and Security Technologies The smartphone market is increasing very rapidly due to the customer needs and industry trends with wireless carriers, device manufacturers, OS venders,
More information<30312DC1A4BAB8C5EBBDC5C7E0C1A4B9D7C1A4C3A52DC1A4BFB5C3B62E687770>
Journal of the Korea Institute of Information and Communication Engineering 한국정보통신학회논문지(J. Korea Inst. Inf. Commun. Eng.) Vol. 19, No. 2 : 258~264 Feb. 2015 ID3 알고리즘 기반의 귀납적 추론을 활용한 모바일 OS의 성공과 실패에 대한
More informationTHE TITLE
Android System & Launcher Team 8 목차 Android 1) Android Feature 2) Android Architecture 3) Android 개발방법 4) Android Booting Process Dalvik 1) Dalvik VM 2) Dalvik VM Instance Application 1) Application Package
More information04-다시_고속철도61~80p
Approach for Value Improvement to Increase High-speed Railway Speed An effective way to develop a highly competitive system is to create a new market place that can create new values. Creating tools and
More informationÀ±½Â¿í Ãâ·Â
Representation, Encoding and Intermediate View Interpolation Methods for Multi-view Video Using Layered Depth Images The multi-view video is a collection of multiple videos, capturing the same scene at
More informationDBPIA-NURIMEDIA
무선 센서 네트워크 환경에서 링크 품질에 기반한 라우팅에 대한 효과적인 싱크홀 공격 탐지 기법 901 무선 센서 네트워크 환경에서 링크 품질에 기반한 라우팅에 대한 효과적인 싱크홀 공격 탐지 기법 (A Effective Sinkhole Attack Detection Mechanism for LQI based Routing in WSN) 최병구 조응준 (Byung
More informationJVM 메모리구조
조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.
More information09김정식.PDF
00-09 2000. 12 ,,,,.,.,.,,,,,,.,,..... . 1 1 7 2 9 1. 9 2. 13 3. 14 3 16 1. 16 2. 21 3. 39 4 43 1. 43 2. 52 3. 56 4. 66 5. 74 5 78 1. 78 2. 80 3. 86 6 88 90 Ex e cu t iv e Su m m a r y 92 < 3-1> 22 < 3-2>
More informationMicrosoft PowerPoint - chap02-C프로그램시작하기.pptx
#include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의
More information<332EC0E5B3B2B0E62E687770>
한국패션디자인학회지 제12권 4호 Journal of the Korean Society of Fashion Design Vol. 12 No. 4 (2012) pp.29-43 모바일 패션도구로서 어플리케이션의 활용 실태 장 남 경 한세대학교 디자인학부 섬유패션디자인전공 조교수 요 약 본 연구는 스마트폰의 패션관련 어플리케이션의 현황을 조사하고 유형과 특징을 분석하여,
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jun.; 27(6),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2016 Jun.; 276), 504511. http://dx.doi.org/10.5515/kjkiees.2016.27.6.504 ISSN 1226-3133 Print)ISSN 2288-226X Online) Near-Field
More information4S 1차년도 평가 발표자료
모바일 S/W 프로그래밍 안드로이드개발환경설치 2012.09.05. 오병우 모바일공학과 JDK (Java Development Kit) SE (Standard Edition) 설치순서 Eclipse ADT (Android Development Tool) Plug-in Android SDK (Software Development Kit) SDK Components
More information<31362DB1E8C7FDBFF82DC0FABFB9BBEA20B5B6B8B3BFB5C8ADC0C720B1B8C0FC20B8B6C4C9C6C32E687770>
Journal of the Korea Academia-Industrial cooperation Society Vol. 13, No. 4 pp. 1525-1531, 2012 http://dx.doi.org/10.5762/kais.2012.13.4.1525 저예산 독립영화의 구전 마케팅을 위한 스마트폰 모바일 애플리케이션 모델 개발 연구 김혜원 1* 1 청운대학교
More information<353020B9DAC3E1BDC42DC5ACB6F3BFECB5E520C4C4C7BBC6C3BFA1BCADC0C720BAB8BEC820B0EDB7C1BBE7C7D7BFA120B0FCC7D120BFACB1B82E687770>
한국산학기술학회논문지 Vol. 12, No. 3 pp. 1408-1416, 2011 클라우드 컴퓨팅에서의 보안 고려사항에 관한 연구 박춘식 1* 1 서울여자대학교 정보보호학과 Study on Security Considerations in the Cloud Computing Choon-Sik Park 1* 1 Department of Information Security,
More information학습영역의 Taxonomy에 기초한 CD-ROM Title의 효과분석
,, Even the short history of the Web system, the techniques related to the Web system have b een developed rapidly. Yet, the quality of the Webbased application software has not improved. For this reason,
More informationMicrosoft PowerPoint - CSharp-10-예외처리
10 장. 예외처리 예외처리개념 예외처리구문 사용자정의예외클래스와예외전파 순천향대학교컴퓨터학부이상정 1 예외처리개념 순천향대학교컴퓨터학부이상정 2 예외처리 오류 컴파일타임오류 (Compile-Time Error) 구문오류이기때문에컴파일러의구문오류메시지에의해쉽게교정 런타임오류 (Run-Time Error) 디버깅의절차를거치지않으면잡기어려운심각한오류 시스템에심각한문제를줄수도있다.
More informationgnu-lee-oop-kor-lec06-3-chap7
어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jun.; 27(6),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2016 Jun.; 27(6), 495 503. http://dx.doi.org/10.5515/kjkiees.2016.27.6.495 ISSN 1226-3133 (Print) ISSN 2288-226X (Online) Design
More informationuntitled
시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000
More information정보기술응용학회 발표
, hsh@bhknuackr, trademark21@koreacom 1370, +82-53-950-5440 - 476 - :,, VOC,, CBML - Abstract -,, VOC VOC VOC - 477 - - 478 - Cost- Center [2] VOC VOC, ( ) VOC - 479 - IT [7] Knowledge / Information Management
More informationiii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.
Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:
More information1
1 1....6 1.1...6 2. Java Architecture...7 2.1 2SDK(Software Development Kit)...8 2.2 JRE(Java Runtime Environment)...9 2.3 (Java Virtual Machine, JVM)...10 2.4 JVM...11 2.5 (runtime)jvm...12 2.5.1 2.5.2
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 28(3),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2017 Mar.; 28(3), 163 169. http://dx.doi.org/10.5515/kjkiees.2017.28.3.163 ISSN 1226-3133 (Print) ISSN 2288-226X (Online) PCB
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Dec.; 27(12),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2016 Dec.; 27(12), 1036 1043. http://dx.doi.org/10.5515/kjkiees.2016.27.12.1036 ISSN 1226-3133 (Print) ISSN 2288-226X (Online)
More information09권오설_ok.hwp
(JBE Vol. 19, No. 5, September 2014) (Regular Paper) 19 5, 2014 9 (JBE Vol. 19, No. 5, September 2014) http://dx.doi.org/10.5909/jbe.2014.19.5.656 ISSN 2287-9137 (Online) ISSN 1226-7953 (Print) a) Reduction
More informationAndroid App 개발방법
Android App using Xamarin for Visual Studio Yoon Joong Kim Computer Engineering Department, Hanbat National University yjkim@hanbat.ac.kr 1 Xamarin for Visual Studio 설치 Deliver native Android, ios, and
More informationMicrosoft PowerPoint - Windows CE Programming_2008 [호환 모드]
Programming 고재관 Microsoft Mobile Device MVP Speaker 고재관 myaustin@korea.com Microsoft MVP 2006-2008 2008 Mobile Devices 분야 500 시간세미나 / 강의 실무경력 15 년메신저 Portable Device since 1995 집필도서 커뮤니티 http://myaustin.egloos.com
More information03-서연옥.hwp
농업생명과학연구 49(4) pp.31-37 Journal of Agriculture & Life Science 49(4) pp.31-37 Print ISSN 1598-5504 Online ISSN 2383-8272 http://dx.doi.org/10.14397/jals.2015.49.4.31 국가산림자원조사 자료를 적용한 충남지역 사유림경영율 추정 서연옥
More information05(533-537) CPLV12-04.hwp
모바일 OS 환경의 사용자 반응성 향상 기법 533 모바일 OS 환경의 사용자 반응성 향상 기법 (Enhancing Interactivity in Mobile Operating Systems) 배선욱 김정한 (Sunwook Bae) 엄영익 (Young Ik Eom) (Junghan Kim) 요 약 사용자 반응성은 컴퓨팅 시스템에서 가장 중요 한 요소 중에 하나이고,
More information3. 클라우드 컴퓨팅 상호 운용성 기반의 서비스 평가 방법론 개발.hwp
보안공학연구논문지 Journal of Security Engineering Vol.11, No.4 (2014), pp.299-312 http://dx.doi.org/10.14257/jse.2014.08.03 클라우드 컴퓨팅 상호 운용성 기반의 서비스 평가 방법론 개발 이강찬 1), 이승윤 2), 양희동 3), 박철우 4) Development of Service
More information02(243-249) CSTV11-22.hwp
함수호출규약에 기반한 새로운 소프트웨어 워터마킹 기법 243 함수호출규약에 기반한 새로운 소프트웨어 워터마킹 기법 (A Novel Software Watermarking Scheme Based on Calling Convention) 전 철 정진만 김봉재 (Cheol Jeon) (Jinman Jung) (Bongjae Kim) 장준혁 조유근 홍지만 (Joonhyouk
More information04서종철fig.6(121~131)ok
Development of Mobile Applications Applying Digital Storytelling About Ecotourism Resources Seo, Jongcheol* Lee, Seungju**,,,. (mobile AIR)., 3D.,,.,.,,, Abstract : In line with fast settling trend of
More informationuntitled
PMIS 발전전략 수립사례 A Case Study on the Development Strategy of Project Management Information System 류 원 희 * 이 현 수 ** 김 우 영 *** 유 정 호 **** Yoo, Won-Hee Lee, Hyun-Soo Kim, Wooyoung Yu, Jung-Ho 요 약 건설업무의 효율성
More informationDBPIA-NURIMEDIA
The e-business Studies Volume 17, Number 4, August, 30, 2016:319~332 Received: 2016/07/28, Accepted: 2016/08/28 Revised: 2016/08/27, Published: 2016/08/30 [ABSTRACT] This paper examined what determina
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 29, no. 10, Oct ,,. 0.5 %.., cm mm FR4 (ε r =4.4)
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2018 Oct.; 29(10), 799 804. http://dx.doi.org/10.5515/kjkiees.2018.29.10.799 ISSN 1226-3133 (Print) ISSN 2288-226X (Online) Method
More information06_ÀÌÀçÈÆ¿Ü0926
182 183 184 / 1) IT 2) 3) IT Video Cassette Recorder VCR Personal Video Recorder PVR VCR 4) 185 5) 6) 7) Cloud Computing 8) 186 VCR P P Torrent 9) avi wmv 10) VCR 187 VCR 11) 12) VCR 13) 14) 188 VTR %
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Nov.; 26(11),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2015 Nov.; 26(11), 985991. http://dx.doi.org/10.5515/kjkiees.2015.26.11.985 ISSN 1226-3133 (Print)ISSN 2288-226X (Online) Analysis
More information(Microsoft PowerPoint - AndroG3\306\367\306\303\(ICB\).pptx)
w w w. g b t e c. c o. k r 6 안드로이드 App 적용하기 115 1. 안드로이드개요 모바일 OS 의종류 - 스마트폰 : 스마트폰운영체제탑재 애플의 IOS(iPhone OS) - 아이폰, 아이패드, 아이팟터치 구글의안드로이드 - Nexus, 갤럭시 A, S, 모토로이, 시리우스,... MS 의윈도우모바일 ( 윈도우폰 7) - 옴니아 2,
More information정보
정보 Sangwook Lee Deogi High School III 문제해결과프로그래밍 1 추상화 2 알고리즘 3 프로그래밍 모바일프로그래밍 1. 모바일환경과기술 2. 앱인벤터 (App Inventor) 3. 앱만들기 3 1. 모바일환경과기술 학습목표 모바일환경과기술에대해설명할수있다 4 모바일디바이스 모바일디바이스란 손에들고이동하면서사용할수있는장치 다양한프로그램의설치및실행이가능한장치
More informationMicrosoft PowerPoint App Fundamentals[Part1](1.0h).pptx
To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 애플리케이션기초 애플리케이션컴포넌트 액티비티와태스크 Part 1 프로세스와쓰레드 컴포넌트생명주기 Part 2 2 Library Java (classes) aapk.apk (android package) identifiers Resource & Configuration aapk: android
More information제 출 문 환경부장관 귀하 본 보고서를 습마트기기 활용 환경지킴이 및 교육 통합 서비스 개 발 과제의 최종보고서로 제출합니다. 주관연구기관 : 주관연구기관장 : 2015년 10월 주식회사 덕키즈 김 형 준 (주관)연구책임자 : 문종욱 (주관)참여연구원 : 김형준, 문병
보안과제[ ], 일반과제[ ] 최종보고서 그린 생산소비형태 촉진 기술 Technologies for the facilitation of the green production & a type of consumption 스마트기기 활용 환경지킴이 및 교육통합 서비스 개발 Development for Web/App for environmental protection
More information<41736D6C6F D20B9AEBCADBEE7BDC42E687770>
IDA Remote Debugging 2007. 01. 이강석 / certlab@gmail.com http://www.asmlove.co.kr - 1 - Intro IDA Remote debugging에대해알아봅시다. 이런기능이있다는것을잘모르시는분들을위해문서를만들었습니다. IDA 기능중에분석할파일을원격에서디버깅할수있는기능이있는데먼저그림과함께예를들어설명해보도록하겠습니다.
More information20(53?)_???_O2O(Online to Offline)??? ???? ??.hwp
O2O(Online to Offline)서비스 전략방향 연구 - 모바일 사용자 경험 디자인(UX Design)을 중심으로 - O2O(Online to Offline) Service Strategy Research -Focusing on Mobile UX Design- 주저자 김 형 모 Kim, Hyung-mo BK21플러스 다빈치 창의융합인재양성사업단 BK21Plus
More informationDBPIA-NURIMEDIA
한국소음진동공학회 2015추계학술대회논문집년 Study of Noise Pattern and Psycho-acoustics Characteristic of Household Refrigerator * * ** ** Kyung-Soo Kong, Dae-Sik Shin, Weui-Bong Jeong, Tae-Hoon Kim and Se-Jin Ahn Key Words
More information09È«¼®¿µ5~152s
Korean Journal of Remote Sensing, Vol.23, No.2, 2007, pp.45~52 Measurement of Backscattering Coefficients of Rice Canopy Using a Ground Polarimetric Scatterometer System Suk-Young Hong*, Jin-Young Hong**,
More informationPowerPoint Presentation
Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section
More informationThisJava ..
자바언어에정확한타입을추가한 ThisJava 소개 나현익, 류석영 프로그래밍언어연구실 KAIST 2014 년 1 월 14 일 나현익, 류석영 자바언어에정확한타입을추가한 ThisJava 소개 1/29 APLAS 2013 나현익, 류석영 자바 언어에 정확한 타입을 추가한 ThisJava 소개 2/29 실제로부딪힌문제 자바스크립트프로그램분석을위한요약도메인 나현익,
More informationJournal of Educational Innovation Research 2017, Vol. 27, No. 3, pp DOI: (NCS) Method of Con
Journal of Educational Innovation Research 2017, Vol. 27, No. 3, pp.181-212 DOI: http://dx.doi.org/10.21024/pnuedi.27.3.201709.181 (NCS) Method of Constructing and Using the Differentiated National Competency
More information보안공학연구회
보안공학연구논문지 (Journal of Security Engineering), 제 10권 제 2호 2013년 4월 효율적인 안드로이드 애플리케이션 검수를 위한 견고한 퍼미션 기반 악성 애플리케이션 여과 기법 전 철 1), 장준혁 2), 김봉재 3), 정진만 4), 조유근 5) A Robust Permission-Based Malicious Application
More informationDBPIA-NURIMEDIA
The e-business Studies Volume 17, Number 6, December, 30, 2016:275~289 Received: 2016/12/02, Accepted: 2016/12/22 Revised: 2016/12/20, Published: 2016/12/30 [ABSTRACT] SNS is used in various fields. Although
More information<303833315FC1A4BAB8B9FDC7D02031362D325FC3D6C1BEBABB2E687770>
개인정보보호법의 보호원칙에 대한 벌칙조항 연구 A Legal Study of Punishments in Terms of Principles of Private Informaion Protection Law 전동진(Jeon, Dong-Jin)*19) 정진홍(Jeong, Jin-Hong)**20) 목 차 Ⅰ. 들어가는 말 Ⅱ. OECD 개인정보 보호원칙과의 비교
More information1부
PART 1 2 PART 01 _ SECTION 01 API NOTE SECTION 02 3 SECTION 02 GPL Apache2 NOTE 4 PART 01 _ SECTION 03 (Proyo) 2 2 2 1 2 2 : 2 2 Dalvik JIT(Just In Time) CPU 2~5 2~3 : (Adobe Flash) (Air) : SD : : : SECTION
More informationJournal of Educational Innovation Research 2018, Vol. 28, No. 3, pp DOI: NCS : * A Study on
Journal of Educational Innovation Research 2018, Vol. 28, No. 3, pp.157-176 DOI: http://dx.doi.org/10.21024/pnuedi.28.3.201809.157 NCS : * A Study on the NCS Learning Module Problem Analysis and Effective
More information52 l /08
Special Theme_임베디드 소프트웨어 Special Report 모바일 웹 OS 기술 현황과 표준화 동향 윤 석 찬 다음커뮤니케이션 DNALab 팀장 1. 머리말 디바이스에 애플리케이션을 배포할 수 있다. 본 고에서는 모바일 웹 OS의 현황과 임베디드 환 오늘날 인터넷에서 웹 기반 콘텐츠가 차지하는 부 경에서 채용되고 있는 최적화 기술을 살펴보고, 웹
More informationDBPIA-NURIMEDIA
박건수 *, 서태영 **, 김종욱 *** ". 요약 Abstract The induction melting furnace using electric generator has been introduced since 1920s, and it began to be widely applied to industrial applications due to increasing
More informationPowerPoint 프레젠테이션
1 Tizen 실습예제 : Remote Key Framework 시스템소프트웨어특론 (2014 년 2 학기 ) Sungkyunkwan University Contents 2 Motivation and Concept Requirements Design Implementation Virtual Input Device Driver 제작 Tizen Service 개발절차
More information소프트웨어공학 Tutorial #2: StarUML Eun Man Choi
소프트웨어공학 Tutorial #2: StarUML Eun Man Choi emchoi@dgu.ac.kr Contents l StarUML 개요 l StarUML 소개및특징 l 주요기능 l StarUML 화면소개 l StarUML 설치 l StarUML 다운 & 설치하기 l 연습 l 사용사례다이어그램그리기 l 클래스다이어그램그리기 l 순서다이어그램그리기 2
More informationJAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각
JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.
More informationuntitled
MDEP I&C 2009. 4.6 ~ 4.7 14 I. MDEP II. DICWG III. DICWG SW IV. Nuclear Safety Information Conference 2009 Slide -2- I. MDEP MDEP? Multinational Design Evaluation Program MDEP Nuclear Safety Information
More informationJournal of Educational Innovation Research 2017, Vol. 27, No. 2, pp DOI: : Researc
Journal of Educational Innovation Research 2017, Vol. 27, No. 2, pp.251-273 DOI: http://dx.doi.org/10.21024/pnuedi.27.2.201706.251 : 1997 2005 Research Trend Analysis on the Korean Alternative Education
More information歯1.PDF
200176 .,.,.,. 5... 1/2. /. / 2. . 293.33 (54.32%), 65.54(12.13%), / 53.80(9.96%), 25.60(4.74%), 5.22(0.97%). / 3 S (1997)14.59% (1971) 10%, (1977).5%~11.5%, (1986)
More informationMVVM 패턴의 이해
Seo Hero 요약 joshua227.tistory. 2014 년 5 월 13 일 이문서는 WPF 어플리케이션개발에필요한 MVVM 패턴에대한내용을담고있다. 1. Model-View-ViewModel 1.1 기본개념 MVVM 모델은 MVC(Model-View-Contorl) 패턴에서출발했다. MVC 패턴은전체 project 를 model, view 로나누어
More information이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론
이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 2. 관련연구 2.1 MQTT 프로토콜 Fig. 1. Topic-based Publish/Subscribe Communication Model. Table 1. Delivery and Guarantee by MQTT QoS Level 2.1 MQTT-SN 프로토콜 Fig. 2. MQTT-SN
More information(Microsoft PowerPoint - hci2-lecture1.ppt [\310\243\310\257 \270\360\265\345])
Overview C# 과.NET Environment 321190 2016 년가을학기 9/5/2016 박경신 2 Problem Statement 훌륭한프로그램을작성하는것은매우어려운일 어떤프로그래밍언어를사용해야하는가? COM/DCOM 을사용하면해결될수있지않을까? 필요한컴포넌트를자신의프로그램에 attach 하여사용하면편하기는하지만.. COM 은너무구체적인코딩지식을요구함
More informationOperation-name: 악성행위의종류를말하며, Sending SMS Calling Sending sensitive information Converting data 로분류합니다. Operation-target: 악성행위의목표물을말하며, Premium-rate SM
안드로이드악성앱탐지 TUTORIAL 1 소개 안드로이드앱에서추출한여러가지특성을기반으로악성앱을탐지하는샘플모델을소개합니다. * 튜토리얼에서소개되는모델은참고문헌중하나인 Andro-profiler 의작동원리를기반으로하고있습니다. 탐지알고리즘에대한상세한내용은사이트에첨부한논문에서확인하실수있습니다. ** 이번 Data Analysis Challenge 에제공될안드로이드앱은튜토리얼에서사용한데이터셋과수량및파일이다를수있습니다.
More information<31335FB1C7B0E6C7CABFDC2E687770>
에너지기후변화교육 4(2):203~211(2014) 203 초등학교 교과서 에너지 단원의 탐구활동과 시각자료 기능 분석 사례 연구 신명경 권경필 * 경인교육대학교 Abstract : This study aimed to analyze energy related inquiry activity and visual materials in elementary textbook.
More information디지털포렌식학회 논문양식
ISSN : 1976-5304 http://www.kdfs.or.kr Virtual Online Game(VOG) 환경에서의 디지털 증거수집 방법 연구 이 흥 복, 정 관 모, 김 선 영 * 대전지방경찰청 Evidence Collection Process According to the Way VOG Configuration Heung-Bok Lee, Kwan-Mo
More information슬라이드 1
4. Mobile Service Technology Mobile Computing Lecture 2012. 10. 5 안병익 (biahn99@gmail.com) 강의블로그 : Mobilecom.tistory.com 2 Mobile Service in Korea 3 Mobile Service Mobility 4 Mobile Service in Korea 5 Mobile
More information, ( ) 1) *.. I. (batch). (production planning). (downstream stage) (stockout).... (endangered). (utilization). *
, 40 12 (2006 6) 1) *.. I. (batch). (production planning). (downstream stage) (stockout).... (endangered). (utilization). * 40, 40 12 (EPQ; economic production quantity). (setup cost) (setup time) Bradley
More information<32382DC3BBB0A2C0E5BED6C0DA2E687770>
논문접수일 : 2014.12.20 심사일 : 2015.01.06 게재확정일 : 2015.01.27 청각 장애자들을 위한 보급형 휴대폰 액세서리 디자인 프로토타입 개발 Development Prototype of Low-end Mobile Phone Accessory Design for Hearing-impaired Person 주저자 : 윤수인 서경대학교 예술대학
More informationDE1-SoC Board
실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jul.; 27(7),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2016 Jul.; 27(7), 625634. http://dx.doi.org/10.5515/kjkiees.2016.27.7.625 ISSN 1226-3133 (Print)ISSN 2288-226X (Online) Near-Field
More informationService-Oriented Architecture Copyright Tmax Soft 2005
Service-Oriented Architecture Copyright Tmax Soft 2005 Service-Oriented Architecture Copyright Tmax Soft 2005 Monolithic Architecture Reusable Services New Service Service Consumer Wrapped Service Composite
More information<333820B1E8C8AFBFEB2D5A6967626565B8A620C0CCBFEBC7D120BDC7BFDC20C0A7C4A1C3DFC1A42E687770>
Journal of the Korea Academia-Industrial cooperation Society Vol. 13, No. 1 pp. 306-310, 2012 http://dx.doi.org/10.5762/kais.2012.13.1.306 Zigbee를 이용한 실외 위치추정 시스템 구현 김환용 1*, 임순자 1 1 원광대학교 전자공학과 Implementation
More informationISO17025.PDF
ISO/IEC 17025 1999-12-15 1 2 3 4 41 42 43 44, 45 / 46 47 48 49 / 410 411 412 413 414 5 51 52 53 54 / 55 56 57 58 / 59 / 510 A( ) ISO/IEC 17025 ISO 9001:1994 ISO 9002:1994 B( ) 1 11 /, / 12 / 1, 2, 3/ (
More informationPowerPoint Presentation
객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean
More informationDropbox Forensics
Cloud Storage Forensics Part I : Dropbox 2013. 09. 28 forensic.n0fate.com Dropbox Forensics Dropbox Forensics Dropbox 웹기반파일공유서비스 총 12 개의클라이언트지원 Desktop : Windows, Mac OS X, Linux Mobile : ios, Android,
More informationTHE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Sep.; 30(9),
THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. 2019 Sep.; 30(9), 712 717. http://dx.doi.org/10.5515/kjkiees.2019.30.9.712 ISSN 1226-3133 (Print) ISSN 2288-226X (Online) MOS
More informationÆ÷Àå82š
Yun, Ilsoo (E-mail : ilsooyun@ajou.ac.kr) Oh, Cheol (E-mail : cheolo@hanyang.ac.k) Ahn, Hyunkyung (E-mail : anhyunkyung@ajou.ac.kr) Kim, Kyunghyun (E-mail : kk6661@ajou.ac.kr) Han, Eum (E-mail : hano3106@ajou.ac.kr)
More information임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과
임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수
More informationJournal of Educational Innovation Research 2019, Vol. 29, No. 1, pp DOI: * Suggestions of Ways
Journal of Educational Innovation Research 2019, Vol. 29, No. 1, pp.65-89 DOI: http://dx.doi.org/10.21024/pnuedi.29.1.201903.65 * Suggestions of Ways to Improve Teaching Practicum Based on the Experiences
More information<35335FBCDBC7D1C1A42DB8E2B8AEBDBAC5CDC0C720C0FCB1E2C0FB20C6AFBCBA20BAD0BCAE2E687770>
Journal of the Korea Academia-Industrial cooperation Society Vol. 15, No. 2 pp. 1051-1058, 2014 http://dx.doi.org/10.5762/kais.2014.15.2.1051 멤리스터의 전기적 특성 분석을 위한 PSPICE 회로 해석 김부강 1, 박호종 2, 박용수 3, 송한정 1*
More informationSpecial Theme _ 모바일웹과 스마트폰 본 고에서는 모바일웹에서의 단말 API인 W3C DAP (Device API and Policy) 의 표준 개발 현황에 대해서 살펴보고 관 련하여 개발 중인 사례를 통하여 이해를 돕고자 한다. 2. 웹 애플리케이션과 네이
모바일웹 플랫폼과 Device API 표준 이강찬 TTA 유비쿼터스 웹 응용 실무반(WG6052)의장, ETRI 선임연구원 1. 머리말 현재 소개되어 이용되는 모바일 플랫폼은 아이폰, 윈 도 모바일, 안드로이드, 심비안, 모조, 리모, 팜 WebOS, 바다 등이 있으며, 플랫폼별로 버전을 고려하면 그 수 를 열거하기 힘들 정도로 다양하게 이용되고 있다. 이
More information모바일 안드로이드 아키텍처
2017( 제 10 회 ) 한국소프트웨어아키텍트대회 2017. 7. 20. 티온소프트김수현 shkim.hi@gmail.com 목차 1 Android OS Layer Architecture 2 Android Technical Architecture 3 Android Multimedia Architecture 2 Android OS Layer Architecture
More informationPoison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3
Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Example 3.1 Files 3.2 Source code 3.3 Exploit flow
More informationFacebook API
Facebook API 2조 20071069 임덕규 20070452 류호건 20071299 최석주 20100167 김민영 목차 Facebook API 설명 Android App 생성 Facebook developers App 등록 Android App Facebook SDK 추가 예제 Error 사항정리 Facebook API Social Plugin Facebook
More information<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>
SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......
More informationMicrosoft PowerPoint - 6.pptx
DB 암호화업데이트 2011. 3. 15 KIM SUNGJIN ( 주 ) 비에이솔루션즈 1 IBM iseries 암호화구현방안 목차 목 차 정부시책및방향 제정안특이사항 기술적보호조치기준고시 암호화구현방안 암호화적용구조 DB 암호화 Performance Test 결과 암호화적용구조제안 [ 하이브리드방식 ] 2 IBM iseries 암호화구현방안 정부시책및방향
More information