Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Aleksey Cheusov                      2:5020/400     04 Apr 2003  13:47:10
 To : Valentin Nechayev
 Subject : Re: Norton Guide
 -------------------------------------------------------------------------------- 
 
 03154710.GB14170@segfault.kiev.ua>
 From: Aleksey Cheusov <cheusov@scnsoft.com>
 
 Valentin Nechayev <netch@segfault.kiev.ua> writes:
 
 > >>> Aleksey Cheusov wrote:
 > 
 > >> Мнэээ. А кто мешает отлавливать? Вот есть такая вещь как
 > >> libparanoia. (Только под FreeBSD, но всё же. И спортировать её
 > >> легко.) Это комплект реализаций традиционно наиболее опасных
 > >> функций - gets, strcpy, strcat и прочая - которые на входе
 > >> сохраняют указатели цепочки нескольких ближайших стековых
 > >> фреймов, а на выходе - проверяют, и если цепочка нарушена -
 > >> вышибают программу нахер.
 > AC> Если это там о сохранности [ebp+4] (ну или где-то рядом), то
 > AC> маловато как то.
 > 
 > Да, про это. Hо и то достаточно неплохо как для ловли старых багов.
 > В пределах зоны действия моей security policy я не разрешаю собирать
 > без неё некоторые софтины типа pine или qpopper. Как ни странно,
 > помогает.
 
 Hу почему странно, не странно, только
 
 "дайте мне таблеток от жадности,
 да по-больше по-больше..." ;)
 
 > AC> Я имею ввиду corruption +/- один байт. К тому же функций то
 > AC> всего strcpy, strcat, gets, sprintf, scanf Кто ж их сейчас
 > AC> использует?
 > 
 > Увы, ещё достаточно некомпетентных идиотов или криво обученных
 > такими идиотами студентов.
 
 А к чему тогда Open Source, если не пинать?
 
 > AC> Есть же strncpy, strncat, snprintf.
 > 
 > strncat - такая же неуправляемая дрянь, как и strcat, потому что у
 > неё ограничение не сколько есть буфера, а сколько к нему дописать. А
 > strncpy е дописывает NUL если он не влезает. Тоже несерьёзно. Хотя
 > бы strlcpy/strlcat, для начала.
 
 ок.
 
 > 
 > AC> В scanf-е есть %20s А gets я бы вообще запретил использовать. Из
 > AC> за него всякие sed-ы да mawk-и обламывают длинные строки на
 > AC> входе. Дурдом.
 > 
 > Это не из-за него. Разве что из-за fgets. Хотя в glibc есть
 > getline() с переаллокацией буфера на ходу, она вполне могла бы
 > полечить это.
 
 Где-нибудь ещё getline() есть?
 
 > >> Хрен с efence, но valgrind при всех своих возможностях вполне мог
 > >> бы ловить вход в функции и выход из них и отслеживать цепочку
 > >> фреймов при этом.
 > AC> Hичего тебе valgrind не даст. За адресом возврата отследить
 > AC> может, да.
 > 
 > Вот это и нужно. Hа выходе из функции проверить целостность адресов
 > возврата. Сбиты адреса - всё, abort().
 
 Эту идею я понял.
 
 > AC> А в общем случае, что тебе даст sub $0x3c,%esp или xor %eax,%eax
 > AC> push %eax push %eax push %eax если я массив заливаю нулями?
 > AC> Hичего.
 > 
 > А это и не нужно. Hужны адреса возврата и сохранённые предыдущие
 > указатели фреймов. Потому что про них точно известно, что простой
 > сишный код их менять не вправе. С остальными данными, увы, так не
 > получится.
 
 А хотелось бы, и ведь можно...
 по крайней мере с массивами на стеке и глобальными.
 
 > AC> А вот на ублюдочном псевдо- недо- язычке, хуже которого только
 > AC> Java, для дебилов, имбицилов, придурков, необразованного быдла и
 > AC> прочего материала для биофабрики, лучше которого даже
 > AC> Форт-очники и который так любят Вагнер и Луговский, я бы сделал
 > AC> так:
 > 
 > Эх, хорошо... Жаль, в куку не годится...
 
 Куда куда?
 
 > AC> ... и с помощью efence решил бы проблему "общения" с массивами раз и
 > AC> навсегда на 100%, а не только с пятью функциями, которые я лично
 > AC> и не использую и никому не советую.
 > 
 > Угу.
 > 
 > AC> Да в жертву приносятся size(), ={1,2,3}, ухудшается наглядность
 > AC> немножко. Hо, мне кажется, разработчиков sshd, apache, samba и
 > AC> прочих squid-ов и sendmail-ов нагшлядность волнует в меньшей
 > AC> степени, чем вышеупомянутых товарищей. Hо они на этом ублюдочном
 > AC> недоязычке не пишут. Увы.
 > 
 > А им бы не помогло, я боюсь. Почитай два последних мартовских патча
 > на sendmail.
 
 Дай url, а то я один какой=-то нашёл, но местный policy меня
 на ftp не пускает.
 
 А вообще C конечно дырявый по определению, поэтому все меры - полумеры.
 
 -- 
 Best regards, Aleksey Cheusov.
 --- ifmail v.2.15dev5
  * Origin: Science Soft (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Norton Guide   Vasya Kruglov   31 Mar 2003 02:43:46 
 Re: Norton Guide   ‚ ап­ЁЄ Ђ«ҐЄбҐ© €ў ­®ўЁз   31 Mar 2003 08:57:43 
 Norton Guide   Vasya Kruglov   01 Apr 2003 08:01:44 
 Re: Norton Guide   Oleg   31 Mar 2003 11:57:04 
 Norton Guide   Vasya Kruglov   01 Apr 2003 08:02:16 
 Re: Norton Guide   Nick Gazaloff   02 Apr 2003 10:10:41 
 Re: Norton Guide   Vitaly Lugovsky   31 Mar 2003 08:59:23 
 Norton Guide   Vasya Kruglov   01 Apr 2003 07:59:58 
 Re: Norton Guide   Vitaly Lugovsky   02 Apr 2003 05:26:46 
 Norton Guide   Kirill Frolov   02 Apr 2003 07:43:00 
 Norton Guide   Igor Wydrenkov   31 Mar 2003 15:18:04 
 Norton Guide   Vasya Kruglov   01 Apr 2003 08:03:10 
 Re: Norton Guide   Alexandr S. Agranovsky   02 Apr 2003 07:52:27 
 Re: Norton Guide   Aleksey Cheusov   02 Apr 2003 20:32:02 
 Re: Norton Guide   Valentin Nechayev   02 Apr 2003 23:32:18 
 Re: Norton Guide   Aleksey Cheusov   03 Apr 2003 13:22:22 
 Re: Norton Guide   Valentin Nechayev   03 Apr 2003 19:48:41 
 Re: Norton Guide   Aleksey Cheusov   04 Apr 2003 13:47:10 
 Norton Guide   Kirill Frolov   05 Apr 2003 04:22:20 
 Re: Norton Guide   Valentin Nechayev   05 Apr 2003 11:17:32 
 Re: Norton Guide   Victor Wagner   04 Apr 2003 09:36:27 
 Re: Norton Guide   Ian Dichkovsky   04 Apr 2003 13:19:03 
 Re: Norton Guide   Aleksey Cheusov   04 Apr 2003 13:32:20 
 Re: Norton Guide   Vladimir Bormotov   03 Apr 2003 00:51:14 
 Re: Re: Norton Guide   Alexandr S. Agranovsky   03 Apr 2003 07:39:35 
 Re: Norton Guide   Michael Shigorin   03 Apr 2003 17:06:47 
 Norton Guide   Igor Wydrenkov   03 Apr 2003 22:13:24 
 Norton Guide   Vasya Kruglov   04 Apr 2003 12:19:59 
 Norton Guide   Kirill Frolov   01 Apr 2003 15:42:46 
 Re: Norton Guide   Vitaly Lugovsky   02 Apr 2003 05:27:22 
Архивное /ru.linux/172831d4b797e.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional