Jump to content

BW please, fix your application


Darimund

Recommended Posts

  • Replies 54
  • Created
  • Last Reply

Top Posters In This Topic

Okay, I'll hold your hand since you're unable to do this yourself.

 

No, it's quite clear you're unable to run the commands to show what flags are set (hint see example provided above for Bitraider). I'll wait while you learn how to run the commands and post the results up.

 

Edit: Wait, no, don't bother, it's already quite clear you don't actually know what you are talking about :rolleyes:

Edited by Transcendent
Link to comment
Share on other sites

No, it's quite clear you're unable to run the commands to show what flags are set (hint see example provided above for Bitraider). I'll wait while you learn how to run the commands and post the results up.

 

Edit: Wait, no, don't bother, it's already quite clear you don't actually know what you are talking about :rolleyes:

 

While I don't agree with his tone in response to some of the comments on this thread, I do have to agree with the OP's assessment of the security vulnerability that is presented with the game running with administrator rights. His heart may be in the right place, but his mouth - or fingers, as it were - are not.

 

Egos aside, let's examine a few things that have been brought up here.

 

Transcendent, your example of the Discretionary Access Control List, or DACL, while informative, isn't relevant to the topic at hand. A DACL shows what security objects (users and/or security groups) have access to the object in question and what level of access they have, not what the object has access to. So, in your example, the system account has full access to the bitraider stub. But the bitraider stub doesn't have access to the system account. Access control lists are always a one-way street flowing from security object to object, not to mention, accounts are granted or denied permissions, applications are not because they aren't considered security objects (they have no SID in the windows environment); the account’s level of access that executed the applications determines what they can and cannot access. This is why services have a user account associated with them, typically the “Local System” account.

 

So that begs the question, what does bitraider have access to? Well, the answer to that depends on the privilege level of the account that executed it. Let's take SWTOR out of the picture for a minute and look at something far simpler, notepad.exe.

 

Now, when I'm logged into my computer under any user account, regardless of its status as an administrator, super user, whatever, I can access and execute c:\windows\notepad.exe. The security group "users" has been granted read and execute privileges on that executable. So, if I only have standard user permissions, when I execute notepad, the spawned process is granted the same level of access that my user account has. Proof - unless you've altered permissions on the windows folder, when trying to save a .txt file to the c:\windows folder, an error message is presented saying "You don't have permissions to save in this location". Why? Because the "users" group has only been given Read & Execute, List, and Read permissions to the folder.

 

Now, repeating the same task as an administrator, the file saves as expected. Reviewing the DACL on the windows folder shows that the administrators group has modify access to that folder (which includes write).

 

Now, where UAC comes into play here is fairly straight forward. When I login to windows, since my user account is a member of the administrators group, I'm granted 2 authorization tokens. One as a standard user, and one as an administrator. By default, every application I run will only use the standard user token, meaning the applications only have access to what a standard user would have access to, as well as what my own account would have explicit permissions to. Conversely, when I right click on an application and select "run as administrator", the UAC prompt ensues, and then the administrator token is applied to that application, elevating its access to anything in the OS that administrators have access to. This allows me to save txt files in the windows folder when I run notepad as an administrator. Additionally, if I go to file -> open, change text documents to All files *.*, I can browse to notepad.exe (or any executable) and right click and open it again, and it opens in the context of an administrator - this time without the UAC prompt as the first instance of notepad was already elevated.

 

So, let’s put SWTOR back into the picture. When the launcher is executed, you receive a UAC prompt and elevate the launcher to run in the context of an administrator. After you log in, the launcher then starts bitraider to begin patching, or verifying, or doing taxes... (lol I kid) Because the launcher is running in the context of an administrator, now so too is bitraider. After clicking play, bitraider may or may not close itself but the launcher then kicks off the meat and potatoes here that is SWTOR, again in the context of an administrator. The OP's screenshots of the game running as elevated does clearly show this.

 

What the OP was dancing around is a key fundamental of IT Security known as the "Principle of Least Privilege". In a nutshell, this dictates that modules (users, applications, processes) should only have access to the minimum amount of resources that it needs for legitimate functions. In that, BioWare didn't do a great job. The game itself doesn’t need authorization to modify system files, services, settings, or other such things to run. Like 99.99999% of every other game or application, it only needs to be able to read those particular areas, which can be done from the context of a standard user account.

 

I have not seen anything that SWTOR accesses that requires elevation*. If I had to make an educated guess, when BioWare created the launcher, they decided to have it always request elevation so that it could always be able to update if the game was installed to its *default location (the “program files” folder). On the one hand, it ensures the game always updates. On the other hand, it creates a vulnerability by always running as an administrator, not to mention the minor headache that follows by having to run voice comms with administrator privileges as well, and creating yet another vulnerability.

 

Why is it a vulnerability? Well, the OP's scenarios of an evil dev or a hacker may be a tad melodramatic, but it's not an invalid concern. The cloud connected game does have admin rights to the machine, so feasibly it could be exploited to nefarious ends. In the modern age of wannacry viruses, DNC hacking, and hidden cobra squads, it could happen. Will it? Can't say. But to side with the OP on this, better safe than sorry. No need to make it easy for them ;) *hint hint*BioWare*hint hint*

 

As to you, OP, just because someone doesn’t understand something you do, that doesn’t make it OK to insult them, no matter if they insulted you first. Do unto others, turn the other cheek, and all that jazz.

 

And that’s all I have to say on this matter! Now, go stab each other with light sabers and stop bickering like little children. I bid you all adieu.

Link to comment
Share on other sites

I have not seen anything that SWTOR accesses that requires elevation*. If I had to make an educated guess, when BioWare created the launcher, they decided to have it always request elevation so that it could always be able to update if the game was installed to its *default location (the “program files” folder). On the one hand, it ensures the game always updates. On the other hand, it creates a vulnerability by always running as an administrator, not to mention the minor headache that follows by having to run voice comms with administrator privileges as well, and creating yet another vulnerability.

 

Sorry to cherry pick, but it was pointed out elsewhere in this thread that files like DiskCacheArena (and others like it) are continually read/written in the hidden %AppData% folders of the game during gameplay. This folder requires elevated permission to WRITE. Thus SWTOR needs elevated permission to run.

 

I don't think the Programs Folder needs elevated security privileges.

 

>.> how is that a problem?

Your processor is a 5-year old dinosaur. Do you think it could be a bottleneck for you?

Edited by Rion_Starkiller
Link to comment
Share on other sites

Sorry to cherry pick, but it was pointed out elsewhere in this thread that files like DiskCacheArena (and others like it) are continually read/written in the hidden %AppData% folders of the game during gameplay. This folder requires elevated permission to WRITE. Thus SWTOR needs elevated permission to run.

 

I’m not going to bore you with a long spiel about what %appdata% is, but here’s a site that pretty well covers it - https://www.howtogeek.com/318177/what-is-the-appdata-folder-in-windows/

 

The only thing I will touch on, that was indirectly mentioned, is that every user has full control to read/write to the appdata folder as those permissions are inherited from their root user profile folder (C:\users\<username>\). Using web browsers, email clients, word processors, etc., would be a miserable experience if applications needed admin rights to cache and store settings there. Suffice to say, the appdata folder is not protected. Hidden, yes, but still very much accessible by the logged in user without elevation.

 

You can see this yourself by typing %appdata% into the location bar in file explorer. On my machine, swtor appdata is stored in appdata\local\swtor and swtorpref. My user account has full rights to those folders, inherited from c:\users\<myaccount>

 

 

I don't think the Programs Folder needs elevated security privileges.

 

Like Chelbygirl pointed out for the windows folder, by default, the users group only has Read, List, Read & Execute permissions on the program files folder. Typically installers will use inherited permissions when creating the sub folders for their respective applications, but they can set their own permissions if they so chose. In the case of SWTOR, it appears that it does. The 'users' group, along with other groups and users, was granted explicit full rights to the swtor folder and every subfolder within the installed path, thus further negating the need for elevation.

 

With all of this... ahem... discussion, there's not been anything shown that requires administrative access for the game to run. Even shimmed, the game runs perfectly fine as a standard user. Everything this game does has been shown to only require standard user access.

Link to comment
Share on other sites

×
×
  • Create New...