Re: lug-bg: Възможен ли е такъв FIREWALL
- Subject: Re: lug-bg: Възможен ли е такъв FIREWALL
- From: Peter Pentchev <roam@xxxxxxxxxxx>
- Date: Tue, 19 Oct 2004 18:52:48 +0300
On Tue, Oct 19, 2004 at 06:20:34PM +0300, CIO wrote:
> Здравейте
> Възможна ли е следната защитна стена под Линукс
> Например приложение порт към който да се свърже и хост
>
> Пример Кмайл порт 25 хост моето ИСП
>
> Идеята е да се предпазим от софтуер който примерно без мое знание изпрати
> майл по разрешен от мен порт в случая 25
>
> Тоест да не разреша порт 25 изобщо а да го разреша само за даден софтуер.
Не съм чувал за такова нещо, което изобщо не значи, че няма.
Според мен основната причина да мисля, че няма такова нещо още направено,
е, че името на приложението (за разлика от user ID, group ID и т.н.,
което вече *е* направено) се променя тривиално и не е проблем да бъде
"фалшифицирано". Всичко, което ти трябва, е едно извикване на exec*(3) с
подходящ първи параметър. Пример на C:
char *argv[] = {"kmail", "mail.example.com", "25", NULL};
/* в действителен пример ще се запази process ID-то, ще бъдат
* настроени pipes за комуникация и какво ли не още */
if (fork() == 0) {
execv("/usr/bin/nc", argv);
exit(1);
}
Същият пример на Perl:
if (fork() == 0) {
exec('/usr/bin/nc', 'kmail', 'mail.example.com', '25');
die("Couldn't exec netcat: $!\n");
}
Както казах, тривиално - никога не можеш да разчиташ на името, което една
програма си е избрала.
Поздрави,
Петър
--
Peter Pentchev roam@xxxxxxxxxxx roam@xxxxxxxx roam@xxxxxxxxxxx
PGP key: http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553
If you think this sentence is confusing, then change one pig.
Attachment:
pgpqmn_AIX7sE.pgp
Description: PGP signature
|