Portál AbcLinuxu, 13. listopadu 2025 20:41
if (!is_link(fname)) {
int fd = open(fname);
write(fd, .....)
}
Nikoho nezajima, ze mezi is_link a open muze nekdo soubor "transformovat" na link. Ma to byt:
fd = open(fname)
if (fstat(fd, &st) == -1) error();
if (S_ISKNK(st)) {}
Ta binakrka se isnstaluje se suidem a je dost pravdepodobne, ze udelat exploit nebude pro zkuseneho "hackera" zadny problem. Pouzivat to doma na spousteni neduveryhodnych binarek je jiste ok, ale instalovat to na multi-user server a nechavat tomu ten suid je holy nerozum.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.