Portál AbcLinuxu, 7. května 2025 05:28
Nové verze Wine. Výkonnostní vylepšení v podpoře D3D. Bezpečnostní problémy a aplikace pro Windows. Změny v databázi aplikací.
Od vydání stabilní verze 1.6 vyšly dvě vývojové verze. První je 1.7.0, která vyšla 2. srpna 2013 s těmito změnami:
Wine 1.7.1 vyšlo 30. srpna 2013 s těmito změnami:
Kvalitní podpora Direct3D je pro nemálo uživatelů Linuxu důležitá, protože vývojáři her z různých důvodů místo OpenGL, které funguje téměř všude, dávají stále přednost Direct3D (a později často portování na OpenGL musejí řešit dodatečně). Před skoro dvěma měsíci se objevil Direct3D 9 state tracker pro Gallium, který takto poskytuje Direct3D jako plnohodnotně podporované API, tedy bez emulace přes OpenGL a s vyšším výkonem. Vyžaduje jisté úpravy ve Wine a stav zatím zůstává nejistý, protože tyto úpravy zatím začleněny nebyly. Navíc se mohou z tohoto state trackeru radovat jen ti, kdo používají open source ovladače.
Stefan Dösinger mezitím pracoval na jiných vylepšeních výkonu Direct3D ve Wine, ze kterých se ale mohou radovat všichni, a protože se jedná o jednoho z významných vývojářů Wine, dá se očekávat, že se patch ve Wine brzy objeví:
V uplynulých měsících jsem pracoval na pracovním vlákně / vlákně pro proud povelů [command stream; CS] pro wined3d. Přesouvá většinu volání OpenGL do odděleného vlákna s cílem navýšit výkon (bug 11674) a opravit chyby, které je jinak těžké opravovat (24684).
Přiložené patche můžete otestovat jejich aplikováním (git am cesta/k/patchům/*) a nastavením HKCU/Software/Wine/Direct3D/CSMT = „enabled“. Ujistěte se, že jste zakázali StrictDrawOrdering. S těmito patchi už není potřeba a odstranilo by veškeré výkonnostní výhody. (Může se ale hodit při ladění.) Patche fungují s Wine 1.7.1.
Prosím, ozkoušejte tyto patche na svých hrách. Zajímá mě jakýkoliv úspěch nebo selhání a výkonnostní rozdíly. Uvítal bych čísla s výkonem s obyčejným Wine 1.7.1, tímto patchem s CSMT vypnutým a zapnutým a s Wine 1.7.1 + přílohou bugu #44420 a __GL_THREADED_OPTIMIZATIONS.
Poznámky pro ty, co nejsou vývojáři:
Poznámky k implementaci:
Stefan dále popisoval, jaké regrese lze očekávat v testech; konkrétně které je nutné vyřešit a které jsou spíš planý poplach. Na mailing listu zatím Stefanova zpráva nevyvolala žádný ohlas – proto stahujte Wine 1.7.1 a testujte!
Andrew Church se na mailing listu Wine dotazoval, jaký je správný postup pro hlášení bezpečnostních problémů. Dostalo se mu odpovědi, že žádný, ale že může napsat přímo nejvyššímu, tedy Alexandru Julliardovi. Andrew ale nakonec narazil na již známý problém:
[...] Ukázalo se, že je to známý problém (unixfs umožňuje plný přístup k systému souborů přes API Windows, i když není v dosdevices žádný odkaz, co by to umožňoval – nahlášeno jako #22450), takže jsem jen k bugu přidal komentář.
Unixfs, neboli přístup ke kořenovému adresáři v systému, se automaticky objevuje jako jednotka s písmenem Z. Odkazovaný bug spočívá v tom, že unixfs je sice možné zakázat odstraněním klíče z registru, při aktualizaci na novější verzi Wine se ale tento klíč obnoví a Z: se znovu objeví. Zásadní otázkou ale je, čeho chce člověk zakázáním unixfs vlastně dosáhnout. Marcus Meissner:
V závislosti na typu útoku, o který ti jde, nemusí zákaz unixfs stačit.
Pokud chceš spuštěnému malwaru zabránit v přístupu k unixovému filesystému, tak máš smůlu, protože malware by mohl dělat systémová volání na vlastní pěst (int 0x80 na x86, kupříkladu).
Tazatel si je ale toho, že Wine není sandbox, naštěstí dobře vědom:
Jo, toho si jsem vědom – pokud budu spouštět potenciálně zákeřný kód, tak to udělám ve VM . Jde mi spíš o situace, kdy jinak dobře vychovaný program pasivně hlásí vzdálenému serveru to, co vidí, třeba listuje adresáře přes rozhraní shellu – ideálně bych rád omezil to, co vidí, bez režie spojené s během celého VM.
Dále poznamenal, že zákaz unixfs není nikde dobře zdokumentován. Navrhl, aby součástí takové dokumentace bylo upozornění, že zákaz unixfs není nástroj pro obranu proti malwaru.
Program | Původní stav/verze | Nový stav/verze | Změna |
papers,please 1.x | Platinum (1.6) | Gold (1.7.0) | -1 |
VMware vSphere Client 5.1 | Garbage (1.5.15) | Silver (1.6) | +2 |
WinPolis 3.43 | Silver (1.1.22) | Gold (1.6) | +1 |
Need For Speed: Underground 2 Retail | Garbage (1.4.1) | Platinum (1.6) | +4 |
Nuclear Dawn Retail | Platinum (1.5.20) | Silver (1.6) | -2 |
Tom Clancy's Splinter Cell: Chaos Theory Steam Dow... | Platinum (1.5.11) | Silver (1.6) | -2 |
.NET Framework 4.5 | Garbage (1.5.31) | Silver (1.7.1) | +2 |
The Master Genealogist 8.00.000 | Garbage (1.5.14) | Silver (1.6) | +2 |
Gangsters: Organized Crime all | Garbage (1.4.1) | Silver (1.6) | +2 |
Dungeons & Dragons Online: Eberron Unlimited Updat... | Platinum (1.6) | Gold (1.7.0) | -1 |
Two Worlds II Steam | Gold (1.3.27) | Silver (1.6) | -1 |
Gears of War 1.x | Garbage (1.4) | Gold (1.6) | +3 |
Assassin's Creed : Brotherhood Steam | Garbage (1.5.20) | Silver (1.6) | +2 |
Braid 1.0 | Gold (1.3.19) | Platinum (1.4.1) | +1 |
IBExpert Personal Edition | Platinum (1.3.26) | Garbage (1.6) | -4 |
Tom Clancy's Splinter Cell: Double Agent Steam | Garbage (1.3.16) | Silver (1.6) | +2 |
Doom 3 1.5.15 | Platinum (1.5.15) | Silver (1.6) | -2 |
The Witcher Steam | Bronze (1.5.17) | Silver (1.6) | +1 |
Sacred Demo | Gold (1.3.19) | Platinum (1.6) | +1 |
Guitar Pro 6.x | Silver (1.5.3) | Platinum (1.7.0) | +2 |
Need for Speed: Undercover Steam | Gold (1.3.12) | Silver (1.7.0) | -1 |
F.E.A.R.: First Encounter Assault Recon 1.08 | Gold (1.5.19) | Silver (1.7.0) | -1 |
StarCraft II Retail | Gold (1.6) | Platinum (1.7.0) | +1 |
Ultimate Spiderman 1.0 | Silver (1.3.28) | Bronze (1.7.0) | -1 |
Need For Speed: World current | Garbage (1.5.25) | Gold (1.6) | +3 |
Metro: Last Light Steam | Gold (1.5.29) | Silver (1.6) | -1 |
Need For Speed Hot Pursuit 2010 (NFS11) Steam | Gold (1.5.22) | Silver (1.6) | -1 |
Celková změna | +11 |
Program | Původní stav/verze | Nový stav/verze | Změna |
Adobe Reader 11.x | Garbage (1.4.1) | Bronze (1.6-rc1) | +1 |
Polar WebLink 2.4.x | Gold (1.3.23) | Platinum (1.4.1) | +1 |
ARMA 2 Free | Bronze (1.3.36) | Gold (1.7.0) | +2 |
Nerf Arena Blast 1.1 | Gold (1.1.23) | Silver (1.6) | -1 |
Etherlords 1.07 | Silver (1.3.8) | Platinum (1.7.0) | +2 |
Kira Kira English | Platinum (1.1.42) | Bronze (1.7.0) | -3 |
BMW M3 Challenge 1.000000 | Platinum (1.2.2) | Gold (1.6) | -1 |
Mass Effect 2 Steam | Silver (1.5.10) | Platinum (1.6) | +2 |
The Simpsons: Hit & Run 1.0 | Gold (1.3.2) | Platinum (1.7.0) | +1 |
XenCenter XenCenter 5.5 | Bronze (1.1.44) | Garbage (1.4.1) | -1 |
Command & Conquer: Red Alert Demo | Silver (1.3.17) | Platinum (1.6) | +2 |
ZBrush 4R4 | Platinum (1.4) | Gold (1.4.1) | -1 |
Pivot Stickfigure Animator 2.x | Silver (1.0.1) | Platinum (1.6) | +2 |
Final Fantasy XIV Final Fantasy XIV 2.0 Benchmark | Garbage (1.5.25) | Silver (1.7.0) | +2 |
TOCA Touring Car Championship 1.0 | Garbage (1.1.0) | Gold (1.6) | +3 |
LEGO Racers 1.0 | Bronze (1.5.28) | Gold (1.7.0) | +2 |
Tower Wars 1.0 | Platinum (1.5.19) | Silver (1.6) | -2 |
Playboy: The Mansion 1.00 | Garbage (1.5.27) | Bronze (1.7.0) | +1 |
Driver 1.0 | Bronze (1.5.21) | Garbage (1.6) | -1 |
Fiesta Online gamigo | Silver (1.5.18) | Bronze (1.7.0) | -1 |
Safari 5.x | Garbage (1.5.25) | Bronze (1.6) | +1 |
Massive 1.3.0 | Gold (1.3.35) | Bronze (1.4.1) | -2 |
Kingsoft Office 2013 | Bronze (1.4.1) | Garbage (1.6) | -1 |
PDF-XChange PDF Viewer 2.5.x | Platinum (1.4.1) | Bronze (1.6) | -3 |
Hearthstone: Heroes of Warcraft Closed Beta | Bronze (1.7.0) | Gold (1.7.1) | +2 |
Populous: The Beginning 1.03 | Gold (1.4) | Bronze (1.6) | -2 |
.NET Framework 1.1 | Gold (1.5.31) | Garbage (1.7.0) | -3 |
EverQuest II Streaming Client | Platinum (1.4.1) | Gold (1.6) | -1 |
Adobe After Effects 7 | Garbage (1.0-rc1) | Gold (1.6) | +3 |
System Shock 2 GoG/Steam | Gold (1.5.24) | Platinum (1.7.0) | +1 |
Entomorph: Plague of The Darkfall 1.0 | Garbage (1.0.1) | Gold (1.6-rc4) | +3 |
NetViewer V2.1.701.0 | Garbage (1.2.3) | Bronze (1.4.1) | +1 |
SEGA Rally Revo Direct2Drive | Garbage (1.1.42) | Silver (1.6) | +2 |
Planetside 2 0.470.2 | Bronze (1.5.17) | Garbage (1.6) | -1 |
RaidCall 7.2.8 | Bronze (1.6-rc5) | Garbage (1.7.0) | -1 |
World Racing 2 1.4.3.ALL | Platinum (1.1.25) | Garbage (1.6) | -4 |
Assassins Creed Directors Cut Assassins Creed 1 | Platinum (1.3.3) | Silver (1.7.0) | -2 |
AudibleManager 5.5.0.5 | Bronze (1.5.16) | Silver (1.6) | +1 |
K-Meleon 1.5.x | Platinum (1.1.34) | Silver (1.6) | -2 |
Turbocad 7.0 Std | Garbage (1.4) | Silver (1.4.1) | +2 |
Matlab R2010b | Platinum (1.5.24) | Garbage (1.6) | -4 |
Grand Theft Auto: Episodes From Liberty City Title... | Bronze (1.5.11) | Gold (1.6) | +2 |
Hexplore 1.0 | Platinum (1.1.26) | Gold (1.7.0) | -1 |
FXCM Trading Station 2 01.11.011212 | Bronze (1.5.27) | Gold (1.6) | +2 |
OnLive 1.3.7 | Platinum (1.5.17) | Gold (1.7.0) | -1 |
Dead Space 1.0 | Silver (1.5.18) | Platinum (1.6-rc1) | +2 |
Cold Fear 1.0 | Silver (1.5.31) | Gold (1.6) | +1 |
Mirror's Edge Steam | Platinum (1.6) | Bronze (1.7.0) | -3 |
Speakonia 1.0.3.6 | Silver (1.0.1) | Platinum (1.6) | +2 |
SWAT 4 1.x | Gold (1.4) | Silver (1.4.1) | -1 |
System Shock 2 2.4 unofficial | Platinum (1.5.20) | Bronze (1.7.0) | -3 |
DVDFab Platinum 9.0.x | Gold (1.5.20) | Silver (1.6) | -1 |
Grand Theft Auto IV Title Update 7 | Gold (1.5.29) | Silver (1.6) | -1 |
Divine Divinity II 1.01 | Bronze (1.3.10) | Garbage (1.6) | -1 |
Virtual Weather Station 14.01 | Garbage (1.2.1) | Platinum (1.4.1) | +4 |
KalOnline 06/07/25 | Garbage (1.1.42) | Bronze (1.6) | +1 |
Scarlet Blade (Queen's Blade) Current F2P | Gold (1.5.31) | Bronze (1.7.0) | -2 |
Democracy 2 Demo | Gold (1.3.21) | Platinum (1.6) | +1 |
Aselia the Eternal 1.0 English | Silver (1.5.16) | Gold (1.7.0) | +1 |
Left 4 Dead 2 Left 4 Dead 2 Full (Steam) | Silver (1.5.25) | Platinum (1.7.0) | +2 |
Drakensang Online 100 | Garbage (1.5.29) | Silver (1.7.0) | +2 |
ChemDraw 12 | Gold (1.5.19) | Silver (1.6) | -1 |
Divinity: Dragon Commander Beta | Silver (1.6-rc4) | Bronze (1.7.0) | -1 |
San Andreas Multiplayer 0.3x | Platinum (1.4.1) | Gold (1.6) | -1 |
AutoIt 3 | Platinum (1.2.2) | Silver (1.7.0) | -2 |
Donald Duck Quack Attack 1.0 | Gold (1.1.28) | Platinum (1.7.0) | +1 |
Magic: The Gathering – Duels of the Planeswalkers ... | Bronze (1.4.1) | Platinum (1.7.0) | +3 |
Grand Theft Auto: Vice City 1.x | Platinum (1.4) | Gold (1.6) | -1 |
Sid Meier's Civilization V 1.0.0.17 | Platinum (1.5.31) | Silver (1.7.0) | -2 |
Microsoft Office (installer only) 2007 | Platinum (1.5.31) | Silver (1.6) | -2 |
EverQuest EverQuest (Live) | Garbage (1.4.1) | Gold (1.7.0) | +3 |
The Sims 3 All | Platinum (1.6) | Gold (1.7.0) | -1 |
The Typing of the Dead All Versions | Bronze (1.5.7) | Silver (1.6) | +1 |
Command & Conquer: Generals 1.0x | Platinum (1.3.32) | Gold (1.4.1) | -1 |
StarCraft I Retail CD/DVD | Silver (1.4.1) | Platinum (1.6) | +2 |
Campaign Cartographer CC3 | Gold (1.5.29) | Garbage (1.7.0) | -3 |
DjVu Solo 3.1 | Silver (1.3.30) | Platinum (1.6) | +2 |
TheSkyX First Light Edition 10.0.2 | Silver (1.4.1) | Garbage (1.7.0) | -2 |
V-Rally 2 Expert Edition: 1.0 | Garbage (1.3.4) | Silver (1.6) | +2 |
Star Wars: Knights of the Old Republic II – The Si... | Garbage (1.5.17) | Platinum (1.6) | +4 |
Call of Duty Demo (Single Player) | Platinum (1.3.17) | Bronze (1.6) | -3 |
Perfect World International | Garbage (1.6-rc2) | Gold (1.7.0) | +3 |
Diablo III 1.0.* | Platinum (1.5.26) | Gold (1.6) | -1 |
Bioshock Steam Version | Platinum (1.5.19) | Silver (1.6) | -2 |
Fantasy Wars 1.0 | Platinum (1.3.5) | Silver (1.6) | -2 |
SCP – Containment Breach 0.7.* | Garbage (1.5.28) | Gold (1.6) | +3 |
Visual Transaction VT Transaction+ | Garbage (1.0.1) | Gold (1.6-rc2) | +3 |
Tropico 4 1.03 Steam | Gold (1.5.25) | Silver (1.6) | -1 |
Fate/Stay Night Mirrormoon Fan Translation 3.2 | Bronze (1.6-rc5) | Gold (1.7.0) | +2 |
Terraria 1.1.* | Gold (1.6) | Silver (1.7.0) | -1 |
Star Trek: Generations 1.0 | Bronze (1.3.17) | Garbage (1.6) | -1 |
Stronghold 3 Steam | Bronze (1.4-rc4) | Gold (1.4.1) | +2 |
rFactor 1.255 (F) | Platinum (1.5.24) | Silver (1.6) | -2 |
Fluenz f2 | Silver (1.3.35) | Platinum (1.6) | +2 |
Rogue Legacy 1.0.13 | Platinum (1.6) | Gold (1.7.0) | -1 |
Dolby Axon 1.5.1.0 | Bronze (1.4.1) | Garbage (1.6-rc5) | -1 |
IDOS 1.24 | Silver (1.3.14) | Platinum (1.6) | +2 |
Final Fantasy XIV FFXIV:ARR 2.0 Beta | Gold (1.5.27) | Silver (1.7.0) | -1 |
Spotify 0.9.x | Bronze (1.4.1) | Platinum (1.7.0) | +3 |
Lomax 1 | Garbage (0.9.2) | Bronze (1.7.0) | +1 |
OverDrive Media Console v3.0 | Garbage (1.2.3) | Bronze (1.6) | +1 |
Diablo II Lord of Destruction 1.x | Gold (1.4) | Platinum (1.6) | +1 |
Planet Alcatraz 1.06 | Garbage (1.3.37) | Gold (1.6) | +3 |
3DMark 06 | Silver (1.4) | Bronze (1.6) | -1 |
Train Simulator Railworks 4 | Gold (1.5.18) | Platinum (1.6) | +1 |
Fallout 3 1.7 and GOTY | Silver (1.5.29) | Gold (1.6) | +1 |
Bejeweled Twist 1.0 | Bronze (1.3.22) | Silver (1.7.0) | +1 |
Steins;Gate 1.20 | Silver (1.4) | Gold (1.7.0) | +1 |
Risen 2 – Dark Waters Steam | Platinum (1.5.20) | Silver (1.6) | -2 |
Celková změna | +18 |
Získal moje heslá na FaceBook, G+, do emailu, k účtu, fotografiám mojej milenky, ale nenainštaluje mi tam Tetris!
a ne někde pod / kam standardně směřuje jednotka ZNo ale přes
Z:\home\jenda
se dostaneš do ~, ne?
Dost často jim nezáleží na ničení dat uživatele, ale spíš pomaloučku, potichoučku monitorovat, odesílat, popř. se zapojovat do botnetů apod. A k tomu všemu stačí jen uživatelská práva ...Souhlasím, také si to myslím. Navíc to klidně může dělat i nativní aplikace - sám jsem používal mírně modifikovaného Linuxového trojana z knihy "Bezpečnost v Linuxu" pro testování některých nastavení - proto mě udivuje, že ho víc trápí relativně "neškodná" jednotka Z, místo toho aby se zaměřil na zabezpečení proti těmto věcem. Případnou podporu antivirů (zmohli by něco pod wine), nebo třeba propojení ClamAV s wine. Prostě používat aplikace z nedůvěryhodných zdrojů, stahovat a instalovat všechno co na mě kde vyskočí je VŽDY riskantní, bez ohledu na který os je to mířené. To platí pro i wine, nebo klidně i Dosbox ...
Navíc to klidně může dělat i nativní aplikace - sám jsem používal mírně modifikovaného Linuxového trojana z knihy "Bezpečnost v Linuxu"Samozřejmě, ale člověk by čekal, že Wine bude po odstranění Z: alespoň trochu sandboxovat… Že to jde obejít přes ruční systémová volání mě nenapadlo - jak se to vlastně dělá?
Případnou podporu antivirů (zmohli by něco pod wine)Antiviry nefungují a ani nemůžou fungovat, by-design.
Že to jde obejít přes ruční systémová volání mě nenapadlo - jak se to vlastně dělá?Hello world v assembleru
Dost často jim nezáleží na ničení dat uživatele, ale spíš pomaloučku, potichoučku monitorovat, odesílat, popř. se zapojovat do botnetů apodJenze s uzivatelskymi pravy jsou takove programy trivialne odhalitelne, zatimco s rootovskymi maji moznosti se takrka dokonale maskovat.
trivialneJak kdy. Třeba když ti to patchne extension ve Firefoxu a zabydlí se to v ní, tak se to bude hledat dost blbě. A i toho roota může získat brzo a snadno - aliasem na su/sudo.
v ohrožení je hlavně (a pravděpodobně pouze) domovský adresář daného uživateleJinými slovy to nejdůležitější, co na běžném osobním/jednouživatelském desktopu je.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.