bhj_2008_FFR_EXCALOC.pdf

Size: px
Start display at page:

Download "bhj_2008_FFR_EXCALOC.pdf"

Transcription

1 FFR EXCALOC Exploitability Fourteenforty Research Institute, Inc. Fourteenforty Research Institute, Inc. 1

2 2

3 3

4 4

5 5

6 Saved EBP! (int a, char c) char buf[] Saved EBP Canary! (int a, char c) char buf[] 6

7 int vuln(char *arg) { char buf[128]; Canarycookie } strcpy(buf, arg); printf("buf = %s\n", buf); return 0; Canarycookie 7

8 char *arg2 int arg1) Saved EBP (int a, char c) int arg1) Saved EBP (int a, char c) char buf[] char *p char buf[] 8

9 void vuln(char *s, int l) { char *a; char buf[32]; a = buf; while (*s!= '\0') { *a++ = *s++ + 1; } printf("buf = %s\n", buf); return ; } 9

10 10

11 void vuln(char *s, int l) { int len; char buf[32]; len = strlen(s); printf("length = %d, %d\n", len, l); Canary } strcpy(buf, s); return ; Canary 11

12 char *arg2 int arg1) Saved EBP (int a, char c) char *p char buf[] char* arg2) Not use int arg1) Saved EBP (int a, char c) char buf[] char *p char *arg2 12

13 void vuln(char *s, int l) { int len; char buf[32]; len = strlen(s); printf("length = %d, %d\n", len, l); strcpy(buf, s); arg_0src return ; } 13

14 14

15 LOAD_CONFIG 0x00 0x48. 0x40 SEHandlerTable 0x44 SEHandlerCount SEHandlerTable 0x0000XXXX... 15

16 SEHandlerTable 16

17 17

18 HEAP Segments[] FreeList[] HEAP_SEGMENT SignatureFFEEFFEE HEAP FirstEntry HEAP_ENTRY 18

19 HEAP_SEGMENT SignatureFFEEFFEE HEAP FirstEntry HEAP_ENTRY 19

20 HEAP FreeList Segments[] FreeList[0] FreeBlock FreeBlock FreeBlock FreeBlock FreeList[n] FreeBlock FreeBlock FreeBlock FreeList[] FreeBlock FreeBlock FreeBlock 20

21 21

22 Heap Manager Heap FreeList FreeList Heap Heap FreeList 22

23 HeapHeader FreeList FreeList 4byte 4byte Heap FreeList HeapManager HeapManager 23

24 Heap FreeList[0] FreeBlock FreeBlock FreeBlock FreeList FreeList[1] FreeBlock FreeBlock FreeBlock FreeBlock FreeBlock 4byte FreeBlock FreeBlock 24

25 FreeList 25

26 26

27 FreeList 27

28 28

29 Heap Header Heap Header[0] Heap Header[1] Heap Header HeapHeader[0] HeapHeader[1] HeapHeader[2] 29

30 HeapHeader[0] HeapHeader[1] HeapHeader[2] HeapHeader Heap Heap Heap HeapHeader FreeList 30

31 Heap HeapHeader FreeList Heap Heap Heap 31

32 Heap HeapHeader FreeList FreeBlock FreeBlock 0x

33 HeapHeader FreeList 33

34 34

35 FreeList 35

36 36

37 37

38 38

39 [EBP-X] 39

40 40

41 [EBP+] LEA 41

42 42

43 MOV 43

44 44

45 VC Delphi fs:0eaxpush VC fs BCC fs:0 fs:0 45

46 46

47 47

48 48

49 49

50 Visual C++ BCC32 GCC Delphi 50

51 51

52 52

53 53

54 Compiler Type Stack Protection Safe SEH Heap Manager Visual C++ /GS Windows Heap Manager 0x x88 0x02 0x x14D 0x01 0x00401DE4 0x2AB 0x01 54

55 Compiler Type Stack Protection Safe SEH Heap Manager Visual C++ 0x xDC 0x01 0x004010DC 0x08 0x01 0x004010F0 0x59 0x01 55

56 Compiler Type Stack Protection Safe SEH Heap Manager Borland Delphi Delphi Heap Manager 0x D 0x1CF 0x01 0x00403AEA 0x105 0x06 0x00403EEC 0x62 0x03 56

57 = A B C A B C Canary = 1, Canary= 1, = 2 Heap Manager Windows = 1, Borland C++ = 2, Delphi = 2 SafeSEH = 1, SafeSEH= 1, SafeSEH= 2 57

58 Exploitability = / 58

59 59

60 60

61 61

62 Fourteenforty Research Institute, Inc. 62

スライド 1

スライド 1 1 FFR EXCALOC - コンパイラのセキュリティ機能に基づいた Exploitability の数値化 - 株式会社フォティーンフォティ技術研究所 http://www.fourteenforty.jp シニアソフトウェアエンジニア石山智祥 2 はじめに 最近のコンパイラには セキュリティを強化する機能が追加されている しかし 市場に流通しているソフトウェアには コンパイラのセキュリティ機能が利用されていないケースが多い

More information

2016 Institute of Statistical Research

2016 Institute of Statistical Research 2016 Institute of Statistical Research 2016 Institute of Statistical Research 2016 Institute of Statistical Research 2016 Institute of Statistical Research 2016 Institute of Statistical Research 2016 Institute

More information

bitvisor-ipc v12b.key

bitvisor-ipc v12b.key PC PC OS PC PC 1 1 2 101 101 enum tre_rpc_direction { TRE_RPC_DIRECTION_REQUEST, TRE_RPC_DIRECTION_RESULT }; struct tre_rpc_request { }; enum tre_rpc_direction direction; ulong id; ulong proc_number;

More information

r07.dvi

r07.dvi 19 7 ( ) 2019.4.20 1 1.1 (data structure ( (dynamic data structure 1 malloc C free C (garbage collection GC C GC(conservative GC 2 1.2 data next p 3 5 7 9 p 3 5 7 9 p 3 5 7 9 1 1: (single linked list 1

More information

ohp07.dvi

ohp07.dvi 19 7 ( ) 2019.4.20 1 (data structure) ( ) (dynamic data structure) 1 malloc C free 1 (static data structure) 2 (2) C (garbage collection GC) C GC(conservative GC) 2 2 conservative GC 3 data next p 3 5

More information

Digital Photo Professional Ver1.6(Windows)

Digital Photo Professional Ver1.6(Windows) Windows CT1-5193-000 CANON INC. 2005 J 1 2 3 4 s s s 1 1 s s s s s 1 1 a s s 1 s s 1 2 s a 1 s a 2 3 1 1 s a a 2 a 3 a s s 1 a a s a s s 1 s s 1 2 3 s 1 1 a 2 a 1 a s 2 3 1 1 s a 2 1 3 1 s a 2

More information

橡Pro PDF

橡Pro PDF 1 void main( ) char c; /* int c; */ int sum=0; while ((c = getchar())!= EOF) if(isdigit(c) ) sum += (c-'0'); printf("%d\n", sum); main()int i,sum=0; for(i=0;i

More information

Intel Memory Protection Extensions(Intel MPX) x86, x CPU skylake 2015 Intel Software Development Emulator 本資料に登場する Intel は Intel Corp. の登録

Intel Memory Protection Extensions(Intel MPX) x86, x CPU skylake 2015 Intel Software Development Emulator 本資料に登場する Intel は Intel Corp. の登録 Monthly Research Intel Memory Protection Extensions http://www.ffri.jp Ver 1.00.01 1 Intel Memory Protection Extensions(Intel MPX) x86, x86-64 2015 2 CPU skylake 2015 Intel Software Development Emulator

More information

untitled

untitled EPX-64S Rev 1.2 1.. 3 1.1.......... 3 1.2....... 3 1.3....... 4 1.4... 4 1.5... 4 2........ 5 2.1.... 5 EPX64S_GetNumberOfDevices........ 5 EPX64S_GetSerialNumber........ 6 EPX64S_Open....... 7 EPX64S_OpenBySerialNumber

More information

DV-0001_センダイウイルス(SeV)ミニゲノムベクター調整キット(120425_ver._2.3)

DV-0001_センダイウイルス(SeV)ミニゲノムベクター調整キット(120425_ver._2.3) For Research Use Only. Not for use in diagnostic procedures. For Research Use Only. Not for use in diagnostic procedures. 1/25 2/25 3/25 4/25 5/25 6/25 µ µµ µ µµ µ µ 7/25 8/25 9/25 µ µ 10/25 11/25 µ 12/25

More information

joho07-1.ppt

joho07-1.ppt 0xbffffc5c 0xbffffc60 xxxxxxxx xxxxxxxx 00001010 00000000 00000000 00000000 01100011 00000000 00000000 00000000 xxxxxxxx x y 2 func1 func2 double func1(double y) { y = y + 5.0; return y; } double func2(double*

More information

double float

double float 2015 3 13 1 2 2 3 2.1.......................... 3 2.2............................. 3 3 4 3.1............................... 4 3.2 double float......................... 5 3.3 main.......................

More information

Gpci4ソフト_下位DLL_説明書3版.PDF

Gpci4ソフト_下位DLL_説明書3版.PDF G-PCI4 ... 3 WINDOWSNT...3 WINDOWS2000/XP...3... 4...4 DLL WINDOWSNT/2000/XP...4...4... 5...5... 6...6...6...6...6...7...9...11... 11... 11... 11... 12... 12...12 ...13...14 1... 14 2... 15 3... 16 4...

More information

C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. このサンプルページの内容は, 新装版 1 刷発行時のものです.

C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます.  このサンプルページの内容は, 新装版 1 刷発行時のものです. C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. http://www.morikita.co.jp/books/mid/009383 このサンプルページの内容は, 新装版 1 刷発行時のものです. i 2 22 2 13 ( ) 2 (1) ANSI (2) 2 (3) Web http://www.morikita.co.jp/books/mid/009383

More information

I ASCII ( ) NUL 16 DLE SP P p 1 SOH 17 DC1! 1 A Q a q STX 2 18 DC2 " 2 B R b

I ASCII ( ) NUL 16 DLE SP P p 1 SOH 17 DC1! 1 A Q a q STX 2 18 DC2  2 B R b I 4 003 4 30 1 ASCII ( ) 0 17 0 NUL 16 DLE SP 0 @ P 3 48 64 80 96 11 p 1 SOH 17 DC1! 1 A Q a 33 49 65 81 97 113 q STX 18 DC " B R b 34 50 66 8 98 114 r 3 ETX 19 DC3 # 3 C S c 35 51 67 83 99 115 s 4 EOT

More information

char char 1 signed char unsigned char ( ; single-quote 0x27) ASCII Japan Advanced Institute of Science and Technology

char char 1 signed char unsigned char ( ; single-quote 0x27) ASCII Japan Advanced Institute of Science and Technology I117 3 1 School of Information Science, Japan Advanced Institute of Science and Technology char char 1 signed char -128 127 unsigned char 0 255 ( ; single-quote 0x27) ASCII Japan Advanced Institute of

More information

PSJ2014_Josh_PacSec2014-v1-jp.pptx

PSJ2014_Josh_PacSec2014-v1-jp.pptx ARM TrustZone PacSec 2014 : @m0nk_dot @natronkeltner @afrocheese Josh Thomas @m0nk_dot / josh@atredis.com Partner @ Atredis Partners Nathan Keltner @natronkeltner / nathan@atredis.com Partner @ Atredis

More information

I. Backus-Naur BNF : N N 0 N N N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) (2) (3) (4) II. 0(0 101)* (

I. Backus-Naur BNF : N N 0 N N N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) (2) (3) (4) II. 0(0 101)* ( 2016 2016 07 28 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF : 11011 N N 0 N N 11 1001 N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) 1100100 (2) 1111011 (3) 1110010 (4) 1001011

More information

1.... 1 2.... 1 3. STACK SMASHING PROTECTOR... 2 3.1.... 2 3.2. SSP... 2 3.2.1. SSP... 2 3.2.2. SSP egcs... 3 3.3. SSP C... 7 3.3.1. glibc... 7 3.3.2. glibc spec... 7 3.3.3. glibc... 8 3.4. SSP... 9 3.4.1....

More information

Microsoft Word - C.....u.K...doc

Microsoft Word - C.....u.K...doc C uwêííôöðöõ Ð C ÔÖÐÖÕ ÐÊÉÌÊ C ÔÖÐÖÕÊ C ÔÖÐÖÕÊ Ç Ê Æ ~ if eíè ~ for ÒÑÒ ÌÆÊÉÉÊ ~ switch ÉeÍÈ ~ while ÒÑÒ ÊÍÍÔÖÐÖÕÊ ~ 1 C ÔÖÐÖÕ ÐÊÉÌÊ uê~ ÏÒÏÑ Ð ÓÏÖ CUI Ô ÑÊ ÏÒÏÑ ÔÖÐÖÕÎ d ÈÍÉÇÊ ÆÒ Ö ÒÐÑÒ ÊÔÎÏÖÎ d ÉÇÍÊ

More information

4. 半角文字コード変換表 ここでは 半角文字のコード変換についての詳細な表を記載します の文字と文字コード (16 進数 ) には 表内で灰色の網掛けを設定しています 4.1 IBMカナ文字拡張からへの変換 16 進数 16 進数 16 進数 16 進数 16 進数 16 進数 SP 0x40 S

4. 半角文字コード変換表 ここでは 半角文字のコード変換についての詳細な表を記載します の文字と文字コード (16 進数 ) には 表内で灰色の網掛けを設定しています 4.1 IBMカナ文字拡張からへの変換 16 進数 16 進数 16 進数 16 進数 16 進数 16 進数 SP 0x40 S 2013 年 4 月 3 日 お客様各位 株式会社セゾン情報システムズ HULFT 事業部 コード変換機能での のサポート 拝啓貴社ますますご清祥のこととお慶び申し上げます 平素は格別のご高配を賜り 厚く御礼申し上げます idivo Ver.1.4.0 では コード変換機能で変換できるコード体系の 1 つとして をサポートしました ついては 次に示すコード変換のパターンにおける 文字と文字コード (16

More information

02

02 54 163116831 02 1 168 54 158 53 162 53 148 52 152 52 10,000 0 40,000 30,000 20,000 50,000 70,000 60,000 1,000 500 1,500 2,000 0 2,500 3,000 4,000 3,500 4,500 168 54 158 53 162 53 148 52 152 52 03 52148

More information

£Ã¥×¥í¥°¥é¥ß¥ó¥°ÆþÌç (2018) - Â裶²ó ¨¡ À©¸æ¹½Â¤¡§·«¤êÊÖ¤· ¨¡

£Ã¥×¥í¥°¥é¥ß¥ó¥°ÆþÌç (2018) - Â裶²ó  ¨¡ À©¸æ¹½Â¤¡§·«¤êÊÖ¤· ¨¡ (2018) 2018 5 24 ( ) while ( ) do while ( ); for ( ; ; ) while int i = 0; while (i < 100) { printf("i = %3d\n", i); i++; while int i = 0; i while (i < 100) { printf("i = %3d\n", i); i++; while int i =

More information

C言語入門

C言語入門 1 C 言語入門 第 11 週 プログラミング言語 Ⅰ( 実習を含む ), 計算機言語 Ⅰ 計算機言語演習 Ⅰ, 情報処理言語 Ⅰ( 実習を含む ) 2 コンパイル時のエラーのパターン 復習 3 gcc のエラーメッセージ 環境変数 LANG を設定すると言語が変わる mintty + bash + GNU C $ LANG=C gcc error1.c error1.c: In function

More information

11 12-2-

11 12-2- -1- 11 12-2- ( ) ( ) ( ) ( ) ( ) ( ) -3- ( ) ( ) ( ) ( ) ( ) -4- ( ) ( ) ( ) ( ) ( ) ( ) ( ) -5- ( ) ( ) ( ) ( ) ( ) ( ) -6- ( ) ( ) Arcstar21 ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) -7- ( ) (

More information

(2 Linux Mozilla [ ] [ ] [ ] [ ] URL 2 qkc, nkc ~/.cshrc (emacs 2 set path=($path /usr/meiji/pub/linux/bin tcsh b

(2 Linux Mozilla [ ] [ ] [ ] [ ] URL   2 qkc, nkc ~/.cshrc (emacs 2 set path=($path /usr/meiji/pub/linux/bin tcsh b II 5 (1 2005 5 26 http://www.math.meiji.ac.jp/~mk/syori2-2005/ UNIX (Linux Linux 1 : 2005 http://www.math.meiji.ac.jp/~mk/syori2-2005/jouhousyori2-2005-00/node2. html ( (Linux 1 2 ( ( http://www.meiji.ac.jp/mind/tool/internet-license/

More information

Microsoft Word - 中間試験 その1_解答例.doc

Microsoft Word - 中間試験 その1_解答例.doc 問題 1.C 言語 情報技術 Ⅱ 前半中間試験 次の宣言をしている時 以下の問いに答えよ unsigned char moji_1; struct Kouzou { unsigned char code; unsigned char str[10]; }; struct Kouzou mk[3]; 明星大学情報学科 3 年後期 情報技術 Ⅱ 中間試験その 1 Page 1 1-1. 各値を求めよ (1)sizeof(

More information

I void* School of Information Science, Japan Advanced Institute of Science and Technology

I void* School of Information Science, Japan Advanced Institute of Science and Technology I117 25 void* School of Information Science, Japan Advanced Institute of Science and Technology sdict ( ) idict ; long long double void* Japan Advanced Institute of Science and Technology 2008 1-2 1 idict

More information

pptx

pptx iphone 2010 8 18 C xkozima@myu.ac.jp C Hello, World! Hello World hello.c! printf( Hello, World!\n );! os> ls! hello.c! os> cc hello.c o hello! os> ls! hello!!hello.c! os>./hello! Hello, World!! os>! os>

More information

I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) + x * x + x x (4) * *

I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) + x * x + x x (4) * * 2015 2015 07 30 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) +

More information

tutorial_lc.dvi

tutorial_lc.dvi 00 Linux v.s. RT Linux v.s. ART-Linux Linux RT-Linux ART-Linux Linux kumagai@emura.mech.tohoku.ac.jp 1 1.1 Linux Yes, No.,. OS., Yes. Linux,.,, Linux., Linux.,, Linux. Linux.,,. Linux,.,, 0..,. RT-Linux

More information

O(N) ( ) log 2 N

O(N) ( ) log 2 N 2005 11 21 1 1.1 2 O(N) () log 2 N 1.2 2 1 List 3-1 List 3-3 List 3-4? 3 3.1 3.1.1 List 2-1(p.70) 1 1 10 1 3.1.2 List 3-1(p.70-71) 1 1 2 1 2 2 1: 1 3 3.1.3 1 List 3-1(p.70-71) 2 #include stdlib.h

More information

DOMINOTM DOMINO Melody TM DOMINO Harmony TM DOMINO Symphony TM PCI PCIe DOMINO TM DOMINO Iota TM - DOMINO Melody TM - DOMINO Alpha 2 TM DOMINO Harmony

DOMINOTM DOMINO Melody TM DOMINO Harmony TM DOMINO Symphony TM PCI PCIe DOMINO TM DOMINO Iota TM - DOMINO Melody TM - DOMINO Alpha 2 TM DOMINO Harmony TM Melody TM Harmony TM Symphony TM e TM Iota TM Melody TM Alpha 2 TM Harmony TM Symphony TM Symphony e TM www.euresys.com info@euresys.com Copyright 200 Euresys s.a. Belgium Euresys Euresys s.a. Belgium

More information

Java演習(4) -- 変数と型 --

Java演習(4)   -- 変数と型 -- 50 20 20 5 (20, 20) O 50 100 150 200 250 300 350 x (reserved 50 100 y 50 20 20 5 (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics; (reserved public class Blocks1 extends

More information

1.ppt

1.ppt /* * Program name: hello.c */ #include int main() { printf( hello, world\n ); return 0; /* * Program name: Hello.java */ import java.io.*; class Hello { public static void main(string[] arg)

More information

ARM gcc Kunihiko IMAI 2009 1 11 ARM gcc 1 2 2 2 3 3 4 3 4.1................................. 3 4.2............................................ 4 4.3........................................

More information

(F1) 0 0 0 5 9

(F1) 0 0 0 5 9 Windows2000 2147483647 80Byte/1 2147483647 128Byte/1 99999999 329Byte/1 99999999 78Byte/1-999,999.9 999,999.9-999,999,999.9 999,999,999.9-999,999,999 999,999,999 tmp.xls (F1) 0 0 0 5 9 31 (F3) (F6) (F3)

More information

debug ( ) 1) ( ) 2) ( ) assert, printf ( ) Japan Advanced Institute of Science and Technology

debug ( ) 1) ( ) 2) ( ) assert, printf ( ) Japan Advanced Institute of Science and Technology I117 28 School of Information Science, Japan Advanced Institute of Science and Technology debug ( ) 1) ( ) 2) ( ) assert, printf ( ) Japan Advanced Institute of Science and Technology 2008 1-2 1 a) b)

More information

1 CUI CUI CUI 1.1 cout cin 1.1.1 redirect.cpp #i n c l u d e <s t r i n g > 3 using namespace std ; 5 6 i n t main ( void ) 7 { 8 s t r i n g s ; 10 c

1 CUI CUI CUI 1.1 cout cin 1.1.1 redirect.cpp #i n c l u d e <s t r i n g > 3 using namespace std ; 5 6 i n t main ( void ) 7 { 8 s t r i n g s ; 10 c C/C++ 007 6 11 1 CUI 1.1....................................... 1................................ 3 1.3 argc argv................................. 5.1.............................................. 5...............................................

More information

: CR (0x0d) LF (0x0a) line separator CR Mac LF UNIX CR+LF MS-DOS WINDOWS Japan Advanced Institute of Science and Technology

: CR (0x0d) LF (0x0a) line separator CR Mac LF UNIX CR+LF MS-DOS WINDOWS Japan Advanced Institute of Science and Technology I117 8 1 School of Information Science, Japan Advanced Institute of Science and Technology : CR (0x0d) LF (0x0a) line separator CR Mac LF UNIX CR+LF MS-DOS WINDOWS Japan Advanced Institute of Science and

More information

漆パンフ.indd

漆パンフ.indd ISBN 978-4-905304-10-4 Forestry and Forest Products Research Institute 1 2 3 1 4 2 5 3 6 4 7 5 8 6 9 7 10 8 11 9 12 10 13 11 14 12 15 13 16 14 17 15 18 16 C 15 % OH OH R R = 4.5 15.0 1.5 4.4 6.5 55.4 1.7

More information

untitled

untitled H8/300,H8S,H8SX [H8S,H8/300 Tool Chain Ver6.2.0.0] #define Inline static inline //************************************************** Inline char sil_and_mem(char *mem,char and) return (*((volatile

More information

独身男性の生命保険加入実態

独身男性の生命保険加入実態 kuga@nli-research.co.jp 1 04NLI Research Institute REPORT April 2011 NLI Research Institute REPORT April 201105 06NLI Research Institute REPORT April 2011 2 NLI Research Institute REPORT April 201107 3

More information

8 / 0 1 i++ i 1 i-- i C !!! C 2

8 / 0 1 i++ i 1 i-- i C !!! C 2 C 2006 5 2 printf() 1 [1] 5 8 C 5 ( ) 6 (auto) (static) 7 (=) 1 8 / 0 1 i++ i 1 i-- i 1 2 2.1 C 4 5 3 13!!! C 2 2.2 C ( ) 4 1 HTML はじめ mkdir work 作業用ディレクトリーの作成 emacs hoge.c& エディターによりソースプログラム作成 gcc -o fuga

More information

独身女性の生命保険加入実態

独身女性の生命保険加入実態 kuga@nli-research.co.jp 1 04 NLI Research Institute REPORT February 2011 NLI Research Institute REPORT February 2011 05 2 06 NLI Research Institute REPORT February 2011 NLI Research Institute REPORT February

More information

:30 12:00 I. I VI II. III. IV. a d V. VI

:30 12:00 I. I VI II. III. IV. a d V. VI 2017 2017 08 03 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF X [ S ] a S S ; X X X, S [, a, ], ; BNF X (parse tree) (1) [a;a] (2) [[a]] (3) [a;[a]] (4) [[a];a] : [a] X 2 222222

More information

main

main 14 1. 12 5 main 1.23 3 1.230000 3 1.860867 1 2. 1988 1925 1911 1867 void JPcalendar(int x) 1987 1 64 1 1 1 while(1) Ctrl C void JPcalendar(int x){ if (x > 1988) printf(" %d %d \n", x, x-1988); else if(x

More information

:30 12:00 I. I VI II. III. IV. a d V. VI

:30 12:00 I. I VI II. III. IV. a d V. VI 2018 2018 08 02 10:30 12:00 I. I VI II. III. IV. a d V. VI. 80 100 60 1 I. Backus-Naur BNF N N y N x N xy yx : yxxyxy N N x, y N (parse tree) (1) yxyyx (2) xyxyxy (3) yxxyxyy (4) yxxxyxxy N y N x N yx

More information

(search: ) [1] ( ) 2 (linear search) (sequential search) 1

(search: ) [1] ( ) 2 (linear search) (sequential search) 1 2005 11 14 1 1.1 2 1.2 (search:) [1] () 2 (linear search) (sequential search) 1 2.1 2.1.1 List 2-1(p.37) 1 1 13 n

More information

/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v

/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v 1 http://www7.bpe.es.osaka-u.ac.jp/~kota/classes/jse.html kota@fbs.osaka-u.ac.jp /* do-while */ #include #include int main(void) double val1, val2, arith_mean, geo_mean; printf( \n );

More information

1 1 2 1 1............ 1 2............ 4 3 6 1............... 6 2............... 8 3.............. 9 4 12 1..................... 12 2..................

1 1 2 1 1............ 1 2............ 4 3 6 1............... 6 2............... 8 3.............. 9 4 12 1..................... 12 2.................. 1 1 2 1 1............ 1 2............ 4 3 6 1............... 6 2............... 8 3.............. 9 4 12 1..................... 12 2........................ 14 5 15 6 20 1.............. 20 2..............

More information

ユニセフ表紙_CS6_三.indd

ユニセフ表紙_CS6_三.indd 16 179 97 101 94 121 70 36 30,552 1,042 100 700 61 32 110 41 15 16 13 35 13 7 3,173 41 1 4,700 77 97 81 47 25 26 24 40 22 14 39,208 952 25 5,290 71 73 x 99 185 9 3 3 3 8 2 1 79 0 d 1 226 167 175 159 133

More information

-1-1 1 1 1 1 12 31 2 2 3 4

-1-1 1 1 1 1 12 31 2 2 3 4 2007 -1-1 1 1 1 1 12 31 2 2 3 4 -2-5 6 CPU 3 Windows98 1 -3-2. 3. -4-4 2 5 1 1 1 -5- 50000 50000 50000 50000 50000 50000 50000 50000 50000 50000-6- -7-1 Windows 2 -8-1 2 3 4 - - 100,000 200,000 500,000

More information

DVIOUT

DVIOUT 2005 年度プログラミング演習 II レポート 7 学生用 学籍番号 : 氏名 : 下記の注意事項を守り 次ページ以降の問いに答え レポートを完成させなさい 提出期限 : 2005 年 12 月 13 日 ( 火 ) 13:15 まで提出場所 : 理学部棟正面玄関内に設置のレポートボックス 注意事項 : (1) このページを印刷し 必要事項を記入の上 ( 学籍番号欄と氏名欄は 2 箇所あるので忘れずに記入すること

More information

2 P.S.P.T. P.S.P.T. wiki 26

2 P.S.P.T. P.S.P.T. wiki  26 P.S.P.T. C 2011 4 10 2 P.S.P.T. P.S.P.T. wiki p.s.p.t.since1982@gmail.com http://www23.atwiki.jp/pspt 26 3 2 1 C 8 1.1 C................................................ 8 1.1.1...........................................

More information

自主課題研究レポート 3 年 64 番小野祐貴 研究テーマについてゲームボーイアドバンス用ソフトウエアの設計 任天堂から 2001 年 3 月 21 日に発売された ゲーム機器の ゲームボーイアドバンス ( 以下 GBA) で実際に動作出来るプログラムを作成した GBA のアーキテクチャは以下の通り

自主課題研究レポート 3 年 64 番小野祐貴 研究テーマについてゲームボーイアドバンス用ソフトウエアの設計 任天堂から 2001 年 3 月 21 日に発売された ゲーム機器の ゲームボーイアドバンス ( 以下 GBA) で実際に動作出来るプログラムを作成した GBA のアーキテクチャは以下の通り 自主課題研究レポート 3 年 64 番小野祐貴 研究テーマについてゲームボーイアドバンス用ソフトウエアの設計 任天堂から 2001 年 3 月 21 日に発売された ゲーム機器の ゲームボーイアドバンス ( 以下 GBA) で実際に動作出来るプログラムを作成した GBA のアーキテクチャは以下の通り ARM ARM7TDMI 32bit RISC CPU, 16.78MHz, 32bit 内部メモリ

More information

DPD Software Development Products Overview

DPD Software Development Products Overview 2 2007 Intel Corporation. Core 2 Core 2 Duo 2006/07/27 Core 2 precise VTune Core 2 Quad 2006/11/14 VTune Core 2 ( ) 1 David Levinthal 3 2007 Intel Corporation. PC Core 2 Extreme QX6800 2.93GHz, 1066MHz

More information

WinDriver を使用して、簡単にデバイス ドライバを作成

WinDriver を使用して、簡単にデバイス ドライバを作成 WinDriver Jungo WinDriver OS 1 2 OS WinDriver OS Windows Linux Solaris VxWorks OS WinDriver ( ) Web http://www.xlsoft.com/jp/products/downloa d/ WinDriver Ring-0 API I/O PCI/ISA USB 1 WinDriver 1. WinDriver

More information

untitled

untitled 2004/12/21 2/2 (11/16) DT-MRI (11/30) /OpenGL 12/7 12/14 (12/21) 1/11 (1/18) OpenGL ~ ~ OpenGL Silicon Graphics, OpenGL ~ ~ OpenGL OpenGL Utility Library (GLU) OpenGL. OpenGL. OpenGL Utility Toolkit (GLUT)

More information

17 1. strucr Potter ( ) Harry Potter and the Philosopher s Stone 1997 English Title : Harry Potter and the Philosopher s Stone : : 1997 #include<stdio

17 1. strucr Potter ( ) Harry Potter and the Philosopher s Stone 1997 English Title : Harry Potter and the Philosopher s Stone : : 1997 #include<stdio 17 1. strucr Potter ( ) Harry Potter and the Philosopher s Stone 1997 English Title : Harry Potter and the Philosopher s Stone : : 1997 #include typedef struct Potter{ Potter; int main(void){

More information

家族調査2013_00修正

家族調査2013_00修正 Copyright 213 Hakuhodo Institute of Life and Living, Hakuhodo Inc. PAGE 1 Copyright 213 Hakuhodo Institute of Life and Living, Hakuhodo Inc. 9Findings PAGE 2 Copyright 213 Hakuhodo Institute of Life and

More information

Ethernet / / Ver

Ethernet / / Ver Ethernet / / Ver. 7.1 2007.09.10 1 I/O...1-1 1.1...1-1 1.2...1-1 1.3...1-1 1.4...1-2 1.5...1-3 2...2-1 2.1...2-1 2.1.1...2-1 2.1.2...2-1 2.1.3...2-3 2.1.4...2-3 2.1.5...2-4 2.1.6...2-5 2.2 Ethernet...2-6

More information

#include <stdio.h> unsigned char x86[] = { 0x8b, 0x44, 0x24, 0x04, // mov eax,[esp+4] 0x03, 0x44, 0x24, 0x08, // add eax,[esp+8] 0xc3 // ret }; int ma

#include <stdio.h> unsigned char x86[] = { 0x8b, 0x44, 0x24, 0x04, // mov eax,[esp+4] 0x03, 0x44, 0x24, 0x08, // add eax,[esp+8] 0xc3 // ret }; int ma x86 JIT Web JavaScript x86 JIT JIT x86 JIT Windows OS DEP x86 ASLR DEP ASLR Return-Oriented Programming JIT-Spraying JavaScript JIT x86 x86 JIT How to execute arbitrary code on x86 JIT Compiler Yoshinori

More information

CO-Booter 5.0 ユーザーマニュアル

CO-Booter 5.0 ユーザーマニュアル 2019 1 9 16 41 3 : 1 5 1.1 CO-Booter............................................ 5 2 7 2.1 CO-Store................................... 7 2.1.1 Ardbp32Editor..................................... 7 2.1.2

More information

プログラムローダを用いた 関数の置換により Stack-based Buffer Overflow攻撃を 緩和する手法の提案と実装

プログラムローダを用いた 関数の置換により Stack-based Buffer Overflow攻撃を 緩和する手法の提案と実装 Ask for Answer about C++ Exception Handling with DWARF (Mitigation of Memory Corruption Attacks) Masahiro YOKOYAMA, Takamichi SAITO (Meiji University), Kuniyasu SUZAKI (AIST) 1 ご挨拶 我々は, プログラムの脆弱性及び脆弱性を悪用する攻撃への対策として,

More information

thesis.dvi

thesis.dvi H8 e041220 2009 2 Copyright c 2009 by Kentarou Nagashima c 2009 Kentarou Nagashima All rights reserved , H8.,,,..,.,., AKI-H8/3052LAN. OS. OS H8 Write Turbo. H8 C, Cygwin.,., windows. UDP., (TA7279P).,.

More information

U

U 2007 3606U024-6 2008 2 4 i 1 1 1.1..................................... 1 1.2.................................. 2 1.3.................................. 2 1.4................................ 3 2 4 2.1 Argos..........................

More information

void hash1_init(int *array) int i; for (i = 0; i < HASHSIZE; i++) array[i] = EMPTY; /* i EMPTY */ void hash1_insert(int *array, int n) if (n < 0 n >=

void hash1_init(int *array) int i; for (i = 0; i < HASHSIZE; i++) array[i] = EMPTY; /* i EMPTY */ void hash1_insert(int *array, int n) if (n < 0 n >= II 14 2018 7 26 : : proen@mm.ics.saitama-u.ac.jp 14,, 8 2 12:00 1 O(1) n O(n) O(log n) O(1) 32 : 1G int 4 250 M 2.5 int 21 2 0 100 0 100 #include #define HASHSIZE 100 /* */ #define NOTFOUND 0

More information

untitled

untitled ... 1... 2... 2... 2... 2 84... 2... 3... 4... 4... 4... 4... 5... 5 10... 5 11... 5 12... 6... 7 13... 7 14... 7 15... 7 16... 8... 9 17... 9 18... 9 19... 15 20... 15 21... 15 22... 15 23... 16 24...

More information

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV tutimura@mist.i.u-tokyo.ac.jp kaneko@ipl.t.u-tokyo.ac.jp http://www.misojiro.t.u-tokyo.ac.jp/ tutimura/sem3/ 2002 12 11 p.1/33 10/16 1. 10/23 2. 10/30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20

More information

スライド 1

スライド 1 Monthly Research 固定アドレスのポインタによる ASLR バイパスの理解 株式会社 FFRI http://www.ffri.jp Ver 2.00.01 1 MS13-063 マイクロソフトが 2013 年 8 月に公開したセキュリティパッチ ASLR セキュリティ機能のバイパスの脆弱性 (CVE-2013-2556) の対策を含む 今回は この脆弱性の問題点と パッチによる変更点を調査

More information

住宅(本文、図表)

住宅(本文、図表) 360 1970 90 1999 121 20 4.1 10 5-1 1990 1993 1.6 1.7 1996 1.55 1990 5-2 1970 98 5-3 41 141 80 1944 1.5 90 90 5-1 90 1991 5-4 150 1.99 5.44 99 2.08 2000 2.66 4.52 3.12 2.26 1.36 283 58 1.54 3.12 1.99 2.08

More information

1 1.1 *1 1. sep1.cpp main() sep.cpp separate() *1 GNOME KDE 3

1 1.1 *1 1. sep1.cpp main() sep.cpp separate() *1 GNOME KDE 3 C/C++ 007 5 8 1 1.1............................................... 1.......................................... 1.3.......................................... 5 1...........................................

More information

1 C STL(1) C C C libc C C C++ STL(Standard Template Library ) libc libc C++ C STL libc STL iostream Algorithm libc STL string vector l

1 C STL(1) C C C libc C C C++ STL(Standard Template Library ) libc libc C++ C STL libc STL iostream Algorithm libc STL string vector l C/C++ 2007 6 18 1 C STL(1) 2 1.1............................................... 2 1.2 stdio................................................ 3 1.3.......................................... 10 2 11 2.1 sizeof......................................

More information

untitled

untitled C -1 - -2 - concept lecture keywords FILE, fopen, fclose, fscanf, fprintf, EOF, r w a, typedef gifts.dat Yt JZK-3 Jizake tsumeawase 45 BSP-15 Body soap set 3 BT-2 Bath towel set 25 TEA-2 Koutya

More information

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D II 8 2003 11 12 1 6 ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 Daisuke 8 =>. 73 Daisuke 35 Hiroshi 64 Ichiro 87 Junko

More information

1007  ステルスデバッガを利用したマルウェア解析手法の提案

1007  ステルスデバッガを利用したマルウェア解析手法の提案 マルウェア対策研究人材育成ワークショップ 2008 ステルスデバッガを利用したマルウェア 解析手法の提案 NTT 情報流通プラットフォーム研究所 川古谷裕平岩村誠伊藤光恭 2008/10/10 1 目次 背景 ステルスデバッガの提案 CCC Dataset 2008 検体による評価 考察 まとめ 2008/10/10 2 背景 マルウェアの高度化 高機能化 柔軟な機能追加 自身の隠蔽化 耐解析機能

More information

Makefile, TCPソケットサーバ, コマンドライン引数

Makefile, TCPソケットサーバ, コマンドライン引数 L11(2017-12-12 Tue) : Time-stamp: 2017-12-22 Fri 12:28 JST hig ( ) make http://hig3.net L11 (2017) 1 / 24 I, void die(char message) void die(char message[])... 1 #i n c l u d e 2 / / 3 double

More information

lexex.dvi

lexex.dvi (2018, c ) http://istksckwanseiacjp/ ishiura/cpl/ 4 41 1 mini-c lexc,, 2 testlexc, lexc mini-c 1 ( ) mini-c ( ) (int, char, if, else, while, return 6 ) ( ) (+, -, *, /, %, &, =, ==,!=, >, >=,

More information

TOEIC

TOEIC TOEIC 1 1 3 1.1.............................................. 3 1.2 C#........................................... 3 2 Visual Studio.NET Windows 5 2.1....................................... 5 2.2..........................................

More information

スライド 1

スライド 1 RX62N 周辺機能紹介データフラッシュ データ格納用フラッシュメモリ ルネサスエレクトロニクス株式会社ルネサス半導体トレーニングセンター 2013/08/02 Rev. 1.00 00000-A コンテンツ データフラッシュの概要 プログラムサンプル 消去方法 書き込み方法 読み出し方法 FCUのリセット プログラムサンプルのカスタマイズ 2 データフラッシュの概要 3 データフラッシュとは フラッシュメモリ

More information

プログラミング言語処理系論 (4) Design and Implementation of Programming Language Processors

プログラミング言語処理系論 (4) Design and Implementation of Programming Language Processors プログラミング言語処理系論 (6) Design and Implementation of Programming Language Processors 佐藤周行 ( 情報基盤センター / 電気系専攻融合情報学コース ) 2014-5 の残業から Perl の吐き出すコードをながめてみる Parser Kit 中の vcc6.y をながめてみる 文法定義 パースツリーの格納 実行 fact.pl

More information

Microsoft PowerPoint - kougi7.ppt

Microsoft PowerPoint - kougi7.ppt C プログラミング演習 第 7 回メモリ内でのデータの配置 例題 1. 棒グラフを描く 整数の配列から, その棒グラフを表示する ループの入れ子で, 棒グラフの表示を行う ( 参考 : 第 6 回授業の例題 3) 棒グラフの1 本の棒を画面に表示する機能を持った関数を補助関数として作る #include "stdafx.h" #include void draw_bar( int

More information

PowerPoint Presentation

PowerPoint Presentation p.130 p.198 p.208 2 double weight[num]; double min, max; min = max = weight[0]; for( i= 1; i i < NUM; i++ ) ) if if ( weight[i] > max ) max = weight[i]: if if ( weight[i] < min ) min = weight[i]: weight

More information

目 目 用方 用 用 方

目 目 用方 用 用 方 大 生 大 工 目 目 用方 用 用 方 用 方 MS-MPI MPI.NET MPICH MPICH2 LAM/MPI Ver. 2 2 1 2 1 C C++ Fortan.NET C# C C++ Fortan 用 行 用 用 用 行 用 言 言 言 行 生 方 方 一 行 高 行 行 文 用 行 If ( rank == 0 ) { // 0 } else if (rank == 1) {

More information

Windows Macintosh 3 3 4 = 3 4 = 4 5 6 Windows Macintosh 7 8 9 Windows Macintosh 0 Windows Macintosh 3 4 5 Windows Macintosh Windows Macintosh 3 4 5 = Windows Macintosh 3 4 3 4 5 3 4 5 3 5 4 5 6 3 4 3 5

More information

untitled

untitled 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 3_2. 24 25 26 27 28 29 30 31 32 33 CSV 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

More information