HOME > 상세정보

상세정보

Binary hacks : 해커가 전수하는 테크닉 100선

Binary hacks : 해커가 전수하는 테크닉 100선 (29회 대출)

자료유형
단행본
개인저자
高林哲, 저 鵜飼文敏, 저 佐藤祐介, 저 浜地愼一郞, 저 首藤一幸, 1973- 진명조, 역
서명 / 저자사항
Binary hacks : 해커가 전수하는 테크닉 100선 / 타카바야시 사토루 [외]지음 ; 진명조 옮김
발행사항
서울 :   ITC,   2007  
형태사항
xxii, 452 p. : 삽화 ; 25 cm
원표제
Binary hacks : ハッカ-秘傳のテクニック100選
ISBN
9788990758743
일반주기
공저자: 우카이 후미토시, 사토 유스케, 하마지 신이치로, 슈도 카즈유키  
색인수록  
000 00000cam c2200205 c 4500
001 000045379659
005 20211021111909
007 ta
008 070727s2007 ulka 001c kor
020 ▼a 9788990758743 ▼g 03560
035 ▼a (KERIS)BIB000010970189
040 ▼a 241047 ▼d 211009 ▼c 211009
041 1 ▼a kor ▼h jpn
082 0 4 ▼a 005.43 ▼2 23
085 ▼a 005.43 ▼2 DDCK
090 ▼a 005.43 ▼b 2007b
245 0 0 ▼a Binary hacks : ▼b 해커가 전수하는 테크닉 100선 / ▼d 타카바야시 사토루 [외]지음 ; ▼e 진명조 옮김
246 1 9 ▼a Binary hacks : ▼b ハッカ-秘傳のテクニック100選
260 ▼a 서울 : ▼b ITC, ▼c 2007
300 ▼a xxii, 452 p. : ▼b 삽화 ; ▼c 25 cm
500 ▼a 공저자: 우카이 후미토시, 사토 유스케, 하마지 신이치로, 슈도 카즈유키
500 ▼a 색인수록
700 1 ▼a 高林哲, ▼e▼0 AUTH(211009)74151
700 1 ▼a 鵜飼文敏, ▼e▼0 AUTH(211009)83880
700 1 ▼a 佐藤祐介, ▼e▼0 AUTH(211009)80365
700 1 ▼a 浜地愼一郞, ▼e▼0 AUTH(211009)87455
700 1 ▼a 首藤一幸, ▼d 1973- ▼0 AUTH(211009)12092
700 1 ▼a 진명조, ▼e▼0 AUTH(211009)89456
900 1 0 ▼a 타카바야시 사토루, ▼e
900 1 0 ▼a 우카이 후미토시, ▼e
900 1 0 ▼a 사토 유스케, ▼e
900 1 0 ▼a 하마지 신이치로, ▼e
900 1 0 ▼a 슈도 카즈유키, ▼e
945 ▼a KINS

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.43 2007b 등록번호 111429141 (3회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.43 2007b 등록번호 121153039 (12회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 3 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.43 2007b 등록번호 121153040 (12회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 4 소장처 세종학술정보원/과학기술실(5층)/ 청구기호 005.43 2007b 등록번호 151239739 (2회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M ?
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.43 2007b 등록번호 111429141 (3회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.43 2007b 등록번호 121153039 (12회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.43 2007b 등록번호 121153040 (12회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 세종학술정보원/과학기술실(5층)/ 청구기호 005.43 2007b 등록번호 151239739 (2회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M ?

컨텐츠정보

책소개

책의 주제는 저수준 프로그래밍이다. 저수준이란 컴퓨터의 관점에서 편리하다는 것을 뜻한다. 소프트웨어의 세계는 추상화의 개념을 점차 늘려가며 진보해 왔다. 추상화는 저수준의 복잡한 부분을 감추고, 개발자가 보다 생산적이고 안전한 방법으로 프로그래밍하는 방법을 제공한다.

가끔 발생하는 '의문의 에러'를 해결하고자 할 때는 저수준을 다루어야 할 필요성을 느낀다. 저자는 이와 같은 경우에 사용할 수 있는 수많은 노하우, ‘Binary Hack’을 소개한다. 'Binary Hack'이라는 용어는 0 또는 1, 즉 프로그래밍에서 가장 저수준에 있는 ‘Binary’라는 개념에서 유래한다. 책은 'Binary Hack'을 '소프트웨어의 저수준 기술을 이용한 프로그래밍 노하우'라 정의하고, 기본적인 툴 사용법에서 보안 프로그래밍, OS나 프로세서의 기능을 이용한 고도의 테크닉까지 폭넓게 다룬다.


정보제공 : Aladin

목차


목차
1장 소개 = 1
 1. Binary Hack 입문 = 1
 2. Binary Hack 용어 정리 = 4
 3. file - 파일 종류 확인 = 12
 4. od - 바이너리 파일 덤프 = 15
2장 오브젝트 파일 Hack = 21
 5. ELF 입문 = 21
 6. 정적 라이브러리와 공유 라이브러리 = 34
 7. ldd - 공유 라이브러리 의존관계 확인 = 37
 8. readelf - ELF 파일 정보 보기 = 42
 9. objdump - (1) 오브젝트 파일 덤프 = 45
 10. objdump - (2) 오브젝트 파일 역어셈블 = 50
 11. objcopy - 실행 파일에 데이터 삽입하기 = 55
 12. nm - 오브젝트 파일에 포함된 심볼 확인 = 56
 13. strings - 바이너리 파일에서 문자열 추출 = 63
 14. c++filt - C++ 심볼 demangle = 65
 15. addr2line - 주소에서 파일명과 행 번호 얻기 = 66
 16. strip - 오브젝트 파일에서 심볼 삭제 = 68
 17. ar - 정적 라이브러리 다루기 = 70
 18. C와 C++ 프로그램 링크 방법 = 71
 19. 링크할 때 심볼 충돌 방지하기 = 78
 20. GNU/리눅스 시스템에서 공유 라이브러리에 PIC를 사용하는 이유 = 85
 21. statifier - 동적 실행 파일에서 의사 정적 실행 파일 생성 = 89
3장 GNU 프로그래밍 Hack = 93
 22. GCC 확장기능 입문 = 94
 23. GCC로 인라인 어셈블러 사용 = 100
 24. GCC 빌트인 함수를 이용한 최적화 = 105
 25. glibc를 이용하지 않은 "Hello World" = 109
 26. TLS(Thread Local Storage) = 114
 27. glibc로 시스템 환경에 따라 라이브러리 전환하기 = 116
 28. 링크된 라이브러리에 따라 프로그램 동작 바꾸기 = 120
 29. 라이브러리 외부에 공개할 심볼 제한 = 122
 30. 호환성 관리를 위해 버전별 심볼 사용 = 126
 31. main() 함수 이전에 함수호출하기 = 134
 32. 실행 중에 GCC가 트램펄린 코드를 생성하는 방법 = 138
 33. 스택에 있는 코드의 실행 허용/금지 = 140
 34. 힙에 있는 코드 실행 = 142
 35. PIE(Position Independant Executable, 위치독립실행형식) 생성 = 144
 36. C++로 synchronized method 작성 = 147
 37. C++로 싱글톤 생성 = 152
 38. g++ 예외 처리 이해(throw) = 158
 39. g++ 예외 처리 이해(SjLj) = 160
 40. g++ 예외 처리 이해(DWARF2) = 168
 41. g++ 예외 처리의 실행 시간 비용 = 172
4장 보안 프로그래밍 Hack = 177
 42. GCC 보안 프로그래밍 입문 = 177
 43. -ftrapv로 정수 연산 오버플로 검출 = 182
 44. Mudflap - 버퍼 오버플로 검출 = 186
 45. -D_FORTIFY_SOURCE로 버퍼 오버플로 검출 = 190
 46. -fstack-protector로 스택 보호 = 194
 47. bitmask 사용 시 unsigned를 사용하는 이유 = 198
 48. big shift 작업이 위험한 이유 = 200
 49. 64비트 환경에서 0과 NULL의 차이점 = 202
 50. POSIX 스레드 안전한 함수 = 205
 51. 시그널 핸들러 안전하게 작성하기 = 209
 52. sigwait - 비동기 시그널을 동기적으로 처리하기 = 215
 53. sigsafe - 안전하게 시그널 처리하기 = 220
 54. Valgrind - (1) 메모리 누수 검출하기 = 230
 55. Valgrind - (2) 비정상적인 메모리 접근 검출하기 = 233
 56. Helgrind - 멀티스레드 프로그램 디버그하기 = 237
 57. fakeroot - 거짓 root 권한으로 프로세스 실행하기 = 241
5장 런타임 Hack = 245
 58. 프로그램이 main()에 도달하기까지의 과정 = 245
 59. 시스템콜을 호출하는 방법 = 255
 60. LD_PRELOAD로 공유 라이브러리 교체하기 = 259
 61. LD_PRELOAD로 기존 함수 래핑하기 = 262
 62. dlopen - 실행 중에 동적 링크하기 = 265
 63. C로 백트레이스 표시 = 270
 64. 실행 중인 프로세스의 절대경로 확인 = 276
 65. 실행 중인 프로세스에서 로드하고 있는 공유 라이브러리 확인 = 280
 66. 실행 중인 프로세스의 메모리 맵 확인 = 286
 67. libbfd - 심볼 열거하기 = 292
 68. 실행 중에 C++ 심볼 demangle하기 = 297
 69. ffcall - 동적 시그니처로 함수호출 = 300
 70. libdwarf - 디버그 정보 얻기 = 305
 71. dumper - 구조체 데이터를 보기 쉽게 덤프하기 = 310
 72. 오브젝트 파일을 직접 로드하기 = 314
 73. libunwind - 콜 체인 제어하기 = 322
 74. GNU lightning - 실행 중에 이식 가능한 코드 생성하기 = 326
 75. 스택 영역의 주소 얻기 = 329
 76. sigaltstack - 스택 오버플로에 대처하기 = 335
 77. 함수 진입(enter)/종료(exit) 후킹하기 = 347
 78. 시그널 핸들러로 프로그램 컨텍스트 변경하기 = 350
 79. 프로그램 카운터 값 얻기 = 352
 80. 자기수정코드로 프로그램 동작 변경 = 353
 81. SIGSEGV로 주소 접근 유효성 확인 = 357
 82. strace - 시스템콜 추적하기 = 360
 83. ltrace - 공유 라이브러리의 함수호출 추적하기 = 362
 84. Jockey로 리눅스 프로그램의 실행을 기록, 재생하기 = 364
 85. prelink - 프로그램 기동 향상시키기 = 366
 86. livepatch - 실행 중인 프로세스 패치하기 = 370
6장 프로파일러ㆍ디버거 Hack = 379
 87. gprof - 프로파일 조사하기 = 379
 88. sysprof - 시스템 프로파일 조사하기 = 383
 89. oprofile - 상세한 시스템 프로파일 얻기 = 385
 90. GDB - 실행 중인 프로세스 제어하기 = 390
 91. 하드웨어 디버그 기능 사용하기 = 393
 92. C 프로그램에서 중단점 설정하기 = 397
7장 그 밖의 Hack = 399
 93. Boehm GC의 구조 = 399
 94. 프로세서의 메모리 정렬 = 406
 95. PCL을 이용한 경량 병행처리 = 411
 96. CPU 클록 수 세기 = 414
 97. 부동소수점 수의 비트 표현 = 419
 98. x86 부동소수점 연산자의 특성 = 421
 99. 결과가 무한대 또는 NaN인 연산에서 시그널 발생하기 = 426
 100. 문헌안내 = 429
찾아보기 = 439


관련분야 신착자료

Harvard Business Review (2025)