497 5 3 | 37 0 | 69 3 | 101 2 | 133 0 | 165 2 | 197 0 | 229 3 | 6 1 | 38 2 | 70 2 | 102 0 | 134 0 | 166 2 | 198 0 | 230 2 | 7 2 | 39 0 | 71 1 | 103 0 | 135 0 | 167 3 | 199 1 | 231 1 | 8 1 | 40 0 | 72 0 | 104 1 | 136 1 | 168 2 | 200 0 | 232 0 | 9 0 | 41 1 | 73 0 | 105 0 | 137 1 | 169 1 | 201 1 | 233 1 | 10 2 | 42 2 | 74 0 | 106 4 | 138 2 | 170 0 | 202 1 | 234 0 | 11 3 | 43 1 | 75 0 | 107 1 | 139 3 | 171 2 | 203 1 | 235 0 | 12 2 | 44 0 | 76 0 | 108 2 | 140 2 | 172 0 | 204 0 | 236 1 | 13 0 | 45 0 | 77 0 | 109 1 | 141 1 | 173 0 | 205 2 | 237 4 | 14 1 | 46 1 | 78 1 | 110 0 | 142 3 | 174 1 | 206 0 | 238 1 | 15 1 | 47 2 | 79 1 | 111 0 | 143 0 | 175 1 | 207 2 | 239 0 | 16 2 | 48 0 | 80 1 | 112 1 | 144 3 | 176 0 | 208 0 | 240 0 | 17 1 | 49 0 | 81 0 | 113 1 | 145 1 | 177 0 | 209 0 | 241 0 | 18 0 | 50 2 | 82 0 | 114 1 | 146 0 | 178 0 | 210 1 | 242 0 | 19 0 | 51 0 | 83 4 | 115 1 | 147 0 | 179 1 | 211 4 | 243 2 | 20 0 | 52 1 | 84 1 | 116 4 | 148 0 | 180 1 | 212 1 | 244 1 | 21 0 | 53 1 | 85 1 | 117 0 | 149 2 | 181 1 | 213 12*| 245 1 | 22 1 | 54 3 | 86 0 | 118 0 | 150 1 | 182 2 | 214 3 | 246 1 | 23 0 | 55 3 | 87 0 | 119 1 | 151 0 | 183 0 | 215 0 | 247 0 | 24 0 | 56 1 | 88 0 | 120 0 | 152 2 | 184 0 | 216 2 | 248 0 | 25 1 | 57 0 | 89 0 | 121 2 | 153 0 | 185 2 | 217 1 | 249 0 | 26 1 | 58 0 | 90 1 | 122 0 | 154 1 | 186 0 | 218 1 | 250 2 | 27 2 | 59 1 | 91 1 | 123 0 | 155 1 | 187 1 | 219 0 | 251 2 | 28 2 | 60 2 | 92 1 | 124 1 | 156 1 | 188 1 | 220 0 | 252 0 | 29 1 | 61 1 | 93 3 | 125 2 | 157 2 | 189 2 | 221 0 | 253 1 | 30 0 | 62 1 | 94 0 | 126 0 | 158 1 | 190 1 | 222 1 | 254 2 | 31 0 | 63 0 | 95 1 | 127 0 | 159 0 | 191 0 | 223 2 | 255 0 | [Actual Key] = (1, 2, 3, 4, 5, 66, 75, 123, 99, 100, 123, 43, 213) key[12] is probably 213 reader@hacking:/booksrc $ Атаки этого типа очень успешны, и если вас хотя бы немного беспоко- ит безопасность, следует использовать новый протокол беспроводной связи WPA. Однако по-прежнему есть огромное количество сетей, за- щищенных только WEP. Для проведения WEP-атак есть весьма надежные инструменты. Хоро- ший пример – aircrack (есть на загрузочном диске), однако он требует наличия аппаратуры для беспроводной связи, которой у вас может не быть. Есть масса документации о том, как пользоваться этим инстру- ментом, постоянно находящимся в разработке. Начать можно с man- страницы. AIRCRACK-NG(1) AIRCRACK-NG(1) ИМЯ aircrack-ng взламывает ключи 802.11 WEP / WPA-PSK. СИНТАКСИС aircrack-ng [опции] <.cap / .ivs файл(ы)> 4980x700 Криптология ОПИСАНИЕ aircrack-ng взламывает ключи 802.11 WEP / WPA-PSK. Реализует атаку Флурера-Мантина-Шамира (FMS), а также новые атаки талантливого хакера по имени KoreK. После сбора достаточного количества пакетов aircrack-ng может взломать ключ WEP почти мгновенно. ОПЦИИ Стандартные опции: -a Тип атаки: 1 или wep для WEP и 2 или wpa для WPA-PSK. -e Выбрать сеть по ее ESSID. Требуется также для взлома WPA, если SSID скрыт. Относительно аппаратуры следует проконсультироваться в Интернете. Эта программа также популяризировала изобретательный способ соби- рания IV. Ждать, когда наберется достаточно IV из пакетов, можно ча- сами или даже днями. Но поскольку беспроводная сеть – это все-таки сеть, в ней должен быть ARP-трафик. Поскольку WEP-шифрование не меняет размер пакетов, легко определить, какие из них относят- ся к ARP. В этой атаке перехватывается зашифрованный пакет, раз- мер которого соответствует ARP-запросу, а потом посылается обрат- но в сеть несколько тысяч раз. Каждый раз пакет расшифровывает- ся и отправляется в сеть, а обратно идет соответствующий ARP-ответ. Эти лишние ответы не нарушают работу сети, но зато они порождают отдельный пакет с новым IV. С помощью этого приема, оживляющего работу сети, можно за несколько минут набрать IV в достаточном для взлома WEP-ключа количестве.
0x800ЗаключениеХакинг продолжает оставаться недооцененным, и положение усугубляется склонностью средств массовой информации к сенсациям. Попытки изменить терминологию оказались в целом неэффективными – изменять надо отношение. Хакеры – это просто люди, проникнутые духом новаторства и глубоко изучившие технологии. Хакеры – не обязательно преступники, но пока существует преступность, среди преступников всегда будут хакеры. В самом по себе хакерском знании нет ничего дурного, несмотря на различные способы его применения.Нравится нам или нет, но в программном обеспечении и компьютер- ных сетях, от которых зависит наша повседневная жизнь, есть уязви- мости. Это оказывается неизбежным результатом быстрого роста про- граммных разработок. Новые программы часто оказываются успеш- ными, несмотря на имеющиеся в них уязвимости. Этот успех привле- кает злоумышленников, которые находят способы заработать на этих уязвимостях. Процесс кажется бесконечным, но, к счастью, есть и те, кто ищет уязвимости программ не ради наживы. Эти люди – хакеры, и у каждого есть свои мотивы: одними движет любопытство, другим за эту работу платят, третьи просто любят решать сложные задачи и, ра- зумеется, среди них есть и преступники. Большинство этих людей до- бропорядочны, и они помогают производителям программного обеспе- чения исправить допущенные ими ошибки. Если бы не хакеры, мно- гие слабые места и бреши защиты в программах остались бы скрыты- ми. К сожалению, юридическая система неповоротлива и часто неве- жественна в отношении технологий. Драконовские законы и чрезмер- но строгие приговоры нужны ей для того, чтобы отпугнуть людей от попыток тщательного изучения программ. Это детская логика: уси- лия отвратить хакеров от исследований и поиска уязвимостей тщетны. Если убедить всех в том, что король одет в прекрасное новое платье, то это никак не отразится на том факте, что король гол. Неоткрытые 5000x800 Заключение уязвимости просто будут ждать, пока их обнаружит кто-нибудь гораз- до более злонамеренный, чем средний хакер. Опасность уязвимостей программного обеспечения в том, что последствия их могут быть лю- быми. Реплицирующиеся интернет-черви относительно безвредны по сравнению с теми кошмарными террористическими сценариями, осу- ществления которых все так боятся. Ограничение хакеров с помощью законов на руку более серьезным злоумышленникам, потому что в ре- зультате остается больше нераскрытых уязвимостей, которыми могут воспользоваться те, кого не останавливает закон и кто действительно стремится причинить вред. Кое-кто полагает, что если бы не хакеры, то не было бы и необходимо- сти латать эти нераскрытые слабые места. Конечно, можно смотреть и с такой точки зрения, но лично я предпочитаю прогресс, а не застой. Хакеры играют очень важную роль в развитии технологий. Если бы не хакеры, не было бы стимула совершенствовать компьютерную безопас- ность. И кроме того, пока люди задаются вопросами «почему?» и «что если?», хакеры не переведутся. Мир без хакеров – это мир без любозна- тельности и без новаторства. Надеюсь, что эта книга рассказала о том, в чем состоят некоторые основные приемы хакинга, а возможно, и раскрыла его дух. Техноло- гии постоянно изменяются и развиваются, поэтому всегда будут появ- ляться новые хаки. Всегда будут обнаруживаться новые уязвимые ме- ста в программах, неточности в спецификациях протоколов и множе- ство других просмотров и недочетов. Знания, которые дает эта книга, могут послужить лишь отправной точкой. И уже дело читателя, опира- ясь на эти знания, постоянно думать об устройстве вещей, отыскивать новые возможности и размышлять над тем, о чем не подумали разра- ботчики. Ему решать, как лучше всего воспользоваться своими откры- тиями и применить свои знания. Сама по себе информация не престу- пление. 0x810 СсылкиAleph1 «Smashing the Stack for Fun and Profit», «Phrack» № 49, http://www.phrack.org/issues.html?issue=49&id=14#articleBennett, C., F. Bessette, and G. Brassard «Experimental Quantum Crypto- graphy», «Journal of Cryptology», т. 5, № 1 (1992), 3–28. Borisov, N., I. Goldberg, and D. Wagner «Security of the WEP Algorithm», http://www.isaac.cs.berkeley.edu/isaac/wep-faq.htmlBrassard, G. and P. Bratley «Fundamentals of Algorithmics», Englewood Cliffs, NJ: Prentice Hall, 1995. CNET News, «40-Bit Crypto Proves No Problem», http://www.news.com/News/Item/0,4,7483,00.html
0x810 Ссылки 501 Conover, M. (Shok) «w00w00 on Heap Overflows», http://www.w00w00. org/files/articles/heaptut.txt Electronic Frontier Foundation, «Felten vs. RIAA», http://www.eff.org/ IP/DMCA/Felten_v_RIAA Eller, R. (caezar) «Bypassing MSB Data Filters for Buffer Overflow Ex- ploits on Intel Platforms», http://community.core-sdi.com/juliano/bypass- msb.txt Fluhrer, S., I. Mantin, and A. Shamir «Weaknesses in the Key Scheduling Algorithm of RC4», http://citeseer.ist.psu.edu/fluhrer01weaknesses.html Grover, L. «Quantum Mechanics Helps in Searching for a Needle in a Hay- stack», «Physical Review Letters», т. 79, № 2 (1997), 325–28. Joncheray, L. «Simple Active Attack Against TCP», http://www.insecure. org/stf/iphijack.txt Levy, S. «Hackers: Heroes of the Computer Revolution», New York: Doubleday, 1984. McCullagh, D. «Russian Adobe Hacker Busted», «Wired News», July 17, 2001, http://www.wired.com/news/politics/0,1283,45298,00.html The NASM Development Team «NASM–The Netwide Assembler (Ma- nual)», version 0.98.34, http://nasm.sourceforge.net Rieck, K. «Fuzzy Fingerprints: Attacking Vulnerabilities in the Human Brain», http://freeworld.thc.org/papers/ffp.pdf Schneier, B. «Applied Cryptography: Protocols, Algorithms, and Source Code in C», 2nd ed. New York: John Wiley & Sons, 1996. Scut and Team Teso «Exploiting Format String Vulnerabilities», version 1.2, доступно в Сети на личных сайтах. Shor, P. «Polynomial-Time Algorithms for Prime Factorization and Dis - crete Logarithms on a Quantum Computer», «SIAM Journal of Com puting», т.26 (1997), 1484–509, http://www.arxiv.org/abs/quant-ph/9508027 Smith, N. «Stack Smashing Vulnerabilities in the UNIX Operating Sys- tem», доступно в Сети на личных сайтах. Solar Designer «Getting Around Non-Executable Stack (and Fix)», «BugTraqpost», August 10, 1997. Stinson, D. «Cryptography: Theory and Practice», Boca Raton, FL: CRC Press, 1995. Zwicky, E., S. Cooper, and D. Chapman «Building Internet Firewalls», 2nd ed. Sebastopol, CA: O’Reilly, 2000.
5020x800 Заключение 0x820 ИсточникиpcalcКалькулятор для программистов, разработчик Питер Глен (Peter Glen): http://ibiblio.org/pub/Linux/apps/math/calc/pcalc-000.tar.gzNASMThe Netwide Assembler, разработчик NASM Development Group: ttp://nasm.sourceforge.netNemesisИнструмент для инъекции пакетов из командной строки, разработ- чики obecian (Mark Grimes) и Jeff Nathan: http://www.packetfactory.net/projects/nemesisdsniffНабор инструментов для перехвата сетевых пакетов, разработчик Даг Сонг (Dug Song): http://monkey.org/dugsong/dsniffDissemblerПолиморфер для создания байт-кода в отображаемых символах ASCII, разработчик Matrix (Jose Ronnick): http://www.phiral.commitm-sshИнструмент для MitM-атаки («человек посередине») на SSH, разра- ботчик Клаэс Нюберг (Claes Nyberg): http://www.signedness.org/tools/mitm-ssh.tgzffpСредство генерации нечетких цифровых отпечатков, разработчик Конрад Рик (Konrad Rieck): http://freeworld.thc.org/thc-ffpJohn the RipperВзломщик паролей разработки Solar Designer: http://www.openwall.com/john Symbols 127.0.0.1 специальный адрес, 243 802.11b, протокол, 481 A aircrack, для WEP-атак , 497 allocator, 86 amplification attack, 288 ARP cache poisoning, 269 redirection, 269 переадресация, 452 протокол, 245 arpspoof, программа для ARP- переадресации, 279 ASCII таблица, 47 atoi(), функция , 74 B backtrace, команда GDB, 55, 81, 82 bandwidth, 288 Berkeley Packet Filter, BPF, 290 big-endian, порядок байтов, 228 Bluetooth, 287 bouncing off linux-gate, 427 breakpoint, 38 break, команда GDB, 38 C cdq, инструкция ассемблера, 338 checksum, 482 connect-back, 351 CRC32, 482 crypt(), функция, 177, 463 cyclic redundancy checksum, 482 D daemon(), функция, 359 DDoS-атака, 289 dereference, 61 dissembler, 502 DMCA, Digital Millennium Copyright Act, 15 DNS (Domain Name Service), 236 DoS-атака, 281 dsniff, программа, 254, 502 .dtors, таблица, 210 Dug Song, 502 E ELF, формат двоичного модуля, 320 epoch, 116 escape-последовательность, 62 Ethernet заголовок пакета, 259 examine, команда GDB, 41, 44 execl(), функция, 172 execve(), системный вызов, 331 execve(), функция, 431 exploit payload, 315 F ffp, 502 filestreams, 99 FILO, структура данных, 86, 410 FIN-сканирование, 300 X-mas и Null-сканирование, 296 firewall, 351 flooding, 287 FMS-атака, 488 fork(), системный вызов, 386 for, цикл BASH, 163 fraggle-атака, 288 frame pointer, FP, 87 G gateway, 270 GCD, 445 GDB показ содержимого памяти, 45 как шестнадцатеричный калькуля- тор, 157 команды, 41 отладчик, 37 подключение к уже запущенному процессу, 306 Алфавитный указатель
504Алфавитный указатель режим следования за дочерним про- цессом, 368 gethostbyname(), функция, 236 Glen Peter, 502 GNU Compiler Collection, GCC, 33 greatest common divisor, GCD, 445 Grimes Mark, 271, 502 Hhijacking, 289 host-to-network long, 228 host-to-network short, 228 HTTP (Hypertext Transfer Protocol), 222 HTTP заголовки, 234 IICMP, протокол, 247 idle scanning (сканирование через без- действующий узел), 297 id, команда UNIX, 106 initialization vector, IV, 482 int3, команда ассемблера , 382 intrusion detection systems, IDS, 395 intrusion prevention systems, IPS, 395 IP-пакеты, заголовок пакета, 247 фрагментированные, 287 JJohn the Ripper, 502 KKey Scheduling Algorithm, KSA, 483 keystream, 482 kill 9, 362 KSA, 489 LL2CAP, 287 LaMacchia Loophole, 138 lea, инструкция ассемблера, 49 lea, команда, 332 libnet, библиотека, 278, 281 libpcap, библиотека, 256 linux-gate, 427 little-endian, порядок байтов в памяти, 43, 261 local base, LB, 87 MMAC-адрес, 245 malloc(), функция , 93 Man in the Middle, MitM, 450 MitM-атака, 502 Matrix, 502 memory_segments.c, программа, 92 Microsoft IIS, эксплойт, 137 mitm-ssh, 502 атака ssh, 451 NNASM, 502 Nathan Jeff , 502 Nemesis, 502 Nemesis, средство инъекции пакетов, 271 netcat, 371, 387, 399, 312, 313 network-to-host long, 228 network-to-host short, 228 Newsham Tim , 485 nexti, команда GDB, 45 no operation, 162 NOP команда ассемблера, 162 NOP-цепочки, 162, 169 number field sieve, NFS, 448 Nyberg Claes, 502 Oobecian, 502 objdump программа, 34 off-by-one ошибка, 136 OpenBSD, 287 open(), функция флаги, 102 PPassword Probability Matrix, PPM, 472 pcalc простой калькулятор, 56, 502 Perl, выполнение инструкций в команд- ной строке, 155 ping, 248 PLT, таблица связки подпрограмм, 216 position-independent code, 321 print, команда GDB, 45 promiscuous mode, 252 Pseudo-Random Generation Algorithm, PRGA, 483 Rraw sockets (сокеты прямого доступа ), 254 RC4, 483 ret2libc, 419 Return Material Authorization, RMA, 248 Алфавитный указатель 505RFC 791, протокол, 260 RFC 793, протокол, 261 Rieck Konrad, 458, 502 Ronnick Jose, 502 RST-пакет, 296 пакеты сброса, 289 Ssalt value, 177 salt, привязка, 463 saved frame pointer, SFP, 87 scanf(), функция ввода/вывода, 65 SDMI (Secure Digital Music Initiative), 14 segmentation fault, сообщение, 76 seteuid(), функция, 335 setresuid(), системный вызов, 336 setuid, бит в правах доступа, 107 shellcode, 159 sizeof, оператор, 57 smurf-атака, 288 SNAP-заголовок, 488 socketcall(), системный вызов, 340 socket(), функция, 225, 227 Solar Designer, 502 SSH, цифровые отпечатки хостов, 455 stack frame, 82 stepi, команда GDB, 426 strace, 376, 393 strstr(), функция, 242 sudo, команда UNIX, 106 su, команда UNIX, 106 syncookies, 286 SYN-пакеты, 282 SYN-сканирование, 296 SYN-флуд, 282 system(), запуск нового процессса, 171 TTCP, 249 заголовок, 249 TCP, реализации, 297 установление соединения, 251 флаги, 249 tcpdump, программа, 254 TCP/IP, 222 установление связи, 296 teardrop, атака, 287 telnet, 233 timestamps, 362 typecasting, 66 typedef, оператор, 275 UUDP, 224, 249 unswitched network, 252 user ID, UID, 106 VVLAN, 481 WWEP2, 481 WEP (Wired Equivalent Privacy), 481 WEP, атаки, 484 where, команда GDB, 77 WPA, протокол, 497 write(), системный вызов, 317 Аалгоритм Евклида, 445 алгоритм псевдослучайной генерации, 484 алгоритм развертывания ключей, 484 Американская ассоциация звукозапи- сывающей индустрии (RIAA), 15 аппаратный адрес, 245 аргументы командной строки, 73 арифметика указателей, 67, 70 архитектура порядок байтов, 44 ассемблер и C, 315 и команды условного перехода, 346 атака-слеза, 287 атака с усилителем, 288 атака типа «человек посредине», 450 атака Флурера, Мантина, Шамира (FMS), 488 атаки по словарю, 465 |