PIA - Portable Icon Associations
Posted: 20 Jul 2010 15:20
This new Windows vulnerability got me thinking... it would be really nice if we had more control over item icons in XY.
What I'm picturing is essentially a clone of PFA, the user would provide the path to an icon and any item with that extension would display this icon instead of asking the shell.
Thus anyone concerned with the above vulnerability could add a definition, "lnk>Icons\Generic.ico", which would, show "<xydata>\Icons\Generic.ico" and prevent XY from asking the shell and thus stopping the exploit.
This could also allow us to have custom icons on network locations without sacrificing time lost to extraction. Plus it would be portable so those users moving between machines could view the same icons everywhere instead of the system definitions.
There are a few additions I think we'd need to add to the existing PFA pattern handling:
1) A way to specify the shell's generic icon ("lnk>!generic")
2) A way to specify the shell/extracted icon ("exe>!shell"). The reason for this is to restrict extracting to a specific pattern, the same could be achieved by allowing inverted match patterns.
3) A network location switch. This would allow us to define generic icons to be used for network locations. (Let's just call it a pattern starting with n! for now.)
Then the existing "Use generic icon" options could be replaced with four default entries:
n!\>Icons\Generic-Network-Folder.ico
n!*>Icons\Generic-Network-File.ico
\>Icons\Generic-Folder.ico
*>Icons\Generic-File.ico
4) This is more for PIA v2 or v3, but a switch to define whether or not the icon overlay should be displayed for matching items. Then we could limit overlays to only being enabled in the folders where they are used.
Is this possible without slowing browsing and list display to a halt, Don?
NOTE: I'm not sure that vulnerability can be exploited when viewing the crafted shortcuts through XY, but my thoughts are it still can since XY would call the shell which is where the problem lies.
What I'm picturing is essentially a clone of PFA, the user would provide the path to an icon and any item with that extension would display this icon instead of asking the shell.
Thus anyone concerned with the above vulnerability could add a definition, "lnk>Icons\Generic.ico", which would, show "<xydata>\Icons\Generic.ico" and prevent XY from asking the shell and thus stopping the exploit.
This could also allow us to have custom icons on network locations without sacrificing time lost to extraction. Plus it would be portable so those users moving between machines could view the same icons everywhere instead of the system definitions.
There are a few additions I think we'd need to add to the existing PFA pattern handling:
1) A way to specify the shell's generic icon ("lnk>!generic")
2) A way to specify the shell/extracted icon ("exe>!shell"). The reason for this is to restrict extracting to a specific pattern, the same could be achieved by allowing inverted match patterns.
3) A network location switch. This would allow us to define generic icons to be used for network locations. (Let's just call it a pattern starting with n! for now.)
Then the existing "Use generic icon" options could be replaced with four default entries:
n!\>Icons\Generic-Network-Folder.ico
n!*>Icons\Generic-Network-File.ico
\>Icons\Generic-Folder.ico
*>Icons\Generic-File.ico
4) This is more for PIA v2 or v3, but a switch to define whether or not the icon overlay should be displayed for matching items. Then we could limit overlays to only being enabled in the folders where they are used.
Is this possible without slowing browsing and list display to a halt, Don?
NOTE: I'm not sure that vulnerability can be exploited when viewing the crafted shortcuts through XY, but my thoughts are it still can since XY would call the shell which is where the problem lies.