Csúnya NTFS bugot találhattak

Jelentője szerint a speciálisan fabrikált nevű fájl(?), folder(?) (nem derül ki) megnyitása után a rendszer azonnal komoly fájlrendszer hibákat logol az eseménynaplóba. Jelenleg ismert következmény egyelőre "csak" az volt, hogy bootoláskor lefutott a chkdsk, de NTFS MFT sérülés is lehetséges.

A bug akár távolról - levélbe ágyazott HTML üzenet - triggerelhető és alacsony jogosultsági szinttel rendelkező user is triggerelheti:
 

További részletek egyelőre nem ismertek.

Hozzászólások

Na, kellett ez a MS-nak. Code leak, és máris sérülékenységet találnak az NTFS-kódban. Felháborító. Legközelebb inkább töröljék le a forráskódot, hogy ne szivárogjon ki. Most szégyen szemre az lesz, hogy a közösség foltozza ingyen. Kell ez a francnak, azok nem értenek hozzájaja.

“I didn’t start using Linux so I could have friends.” (Luke Smith, 2019) 🐧

Na végre valaki megtalálta az önmegsemmítő kódot :)

Köszönjük, nagyon hasznos - így mindenféle részlet nélkül. 

Az NTFS-ben mint fájlrendszerben a "/" és NUL-on kívül bármi lehet (Posix namespace-ben). Azonban Win32 namespace-ben egy csomó más karakter sem lehet (például az említett "\" sem) és egyébként maga az OS is korlátoz (például ":", illetve speciális jelentésű fájlok).

Nekem még win2000-en voltak olyan könyvtáraim, melyekben lpt1: nevű file-ok voltak. DOS-os programok időnként létrehoztak lpt1:-et, amit nem lehetett törölni, emiatt a könyvtárat magát sem. Átnevezni viszont lehetett, így ezek a könyvtárak egy külön tároló könyvtárat kaptak, ott sorakoztak szépen, minden alkönyvtárban egy darab lpt1:. Érdekes módon a FAT32-es diszken ilyen sosem történt, mindig csak NTFS-en. Vicces volt.

Igen ezek a speciális elérések. Itt van egy összefoglaló:
https://docs.microsoft.com/hu-hu/windows/win32/fileio/naming-a-file?red…

El fogsz szörnyedni.. Nem csodálom, hogy bugos.

Mivel egyébként NTFS bugról ír (és nem Windows API hibáról), ezért szerintem így kezdődik a string: \\?\

For file I/O, the "\\?\" prefix to a path string tells the Windows APIs to disable all string parsing and to send the string that follows it straight to the file system.

Most nincs kedvem próbálkozni, hogy a saját fájlrendszeremet elrontsam, de valószínűleg az itt leírtak egy kombinációja okozhatja a hibát. 

Egyébként bug ma is ott van Windows 10-ben is:
cmd (adminisztrátori módban)
notepad \\?\c:\com1.txt
Igen válasz, hogy létrehozza.
Írj bele mondjuk három betűt, majd mentsd el!

Egy különleges szellemfájl lesz a C meghajtón, ami törölhetetlen, átnevezhetetlen, nem lehet róla másolatot készíteni, se mozgatni és minden műveletre "Ismeretlen hibát" dob a grafikus felületen :)
Nincs semmilyen idő attribútuma, általánosban 0 minden mérete, részletekben már 3 byte, nincsenek biztonsági információi.. 

Notepad-ben (és egyéb programokban is) csak parancssorból tudod megnyitni, ha böngészed a fájlt, akkor nem.

Törölni is parancssorból lehet csak: del \\?\c:\com1.txt
Aki ezt nem ismeri az megszívta..

Nem nagyon értem az ilyen kommenteket. Ha én egy cég rendszergazdája vagyok és hirtelen napi 0 helyett napi 12 fájlrendszer sérülésről szóló ticket-et kapok, akkor szeretnék tudni ilyen felfedezésekről, hogy tudjam hova tenni, tudjam minek nézzek utána. Még mély technikai részletek nélkül is egyből beugorhat, hogy hol kell ennek nekikezdeni.

trey @ gépház

c:/con/con? :)

“The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it."
"Senkit nem hagyunk az ereszcsatornán!"