Рубрика X-Puzzle#6

Ведущий: Иван Скляров

Xakep, номер #052, стр. 052-110-2


<table bgcolor=#FF0000 border=0 width=500 height=260 CELLSPACING=0>

<tr>

<td bgcolor=#00008B width=190 height=140 align=center>

<b><font size=4 color=#ffffff ><pre>

* * * * * * * *

* * * * * * * *

* * * * * * * *

* * * * * * * *

* * * * * * * *

</pre></font></b>

</td>

<td><table border=0 height=140 width=310 CELLSPACING=0>

<tr><td height=20></td></tr>

<tr><td height=20 bgcolor=#ffffff></td></tr>

<tr><td height=20></td></tr>

<tr><td height=20 bgcolor=#ffffff></td></tr>

<tr><td height=20></td></tr>

<tr><td bgcolor=#ffffff height=20></td></tr>

<tr><td height=20></td></tr>

</table></td>

</tr>

<tr>

<td colspan=2><table border=0 height=120 width=500 CELLSPACING=0>

<tr><td bgcolor=#ffffff height=20></td></tr>

<tr><td height=20></td></tr>

<tr><td bgcolor=#ffffff height=20></td></tr>

<tr><td height=20></td></tr>

<tr><td bgcolor=#ffffff height=20></td></tr>

<tr><td height=20></td></tr>

</table></td>

</tr>

</table>

Ответ на пазл #4 «BUFFER OVERFLOW»

Все три куска потенциально подвержены ошибке переполнения буфера.

Первый кусок кода осуществляет чтение символов в буфер до ввода конца файла (EOF). Т. к. граничные проверки отсутствуют, то данный код потенциально подвержен переполнению буфера.

Во втором и третьем кусках использованы стандартные функции языка Си: gets() и strcpy(), не осуществляющие проверку на выход из выделенной области памяти, а потому также являющиеся потенциально подверженными ошибке переполнения буфера.

ПЕРВЫЙ ПАЗЛ

Админовские глюки

В одной конторе работал очень педантичный админ. Он всегда приходил на работу вовремя, четко выполнял свои обязанности, не пил, не курил, в коллективе пользовался большим уважением, но... как это свойственно всем людям, имел маленький недостаток. Любил он, знаете ли, частенько побаловать себя травкой. Бывало, зайдет в туалет во время рабочего дня, закроется, раскурит косячок, а потом начинает всех админить (особенно любил админить женщин). И все бы ничего (ну, подумаешь, парень увлекается дурью, все мы не без греха), пока это увлечение не стало мешать его работе. Т.к. дурь была хорошая (200 баксов за пакет), то от частого употребления его начало «клинить» (совершенно перестал отличать реальность от глюков). То, бывало, виря сам в своей сети запустит, то оптоволокно где-нибудь лезвием порежет, то компьютер начальника хакнет, удалив с него все важные документы. Короче, совсем заболел пацан. Он уже и травкой стал себя по минимуму баловать, а глюки все равно периодически возникали. И вот сидит он сейчас перед своим рабочим компьютером, смотрит на экран (см. скриншот) и не поймет, клинит его, или все нормально... На первый взгляд все как обычно, XP и стандартные программы, все работает, ничего не повисло, но что-то здесь не так...

Назад на стр. 052-110-1  Содержание  Вперед на стр. 052-110-3