ID:132247
 
What is a Backdoor? A backdoor bypasses normal authentication, secures remote access to a computer, and/or obtains unauthorized access to files, all while remaining undetected.

Topic() does this.

There are countless developers who have and continue to use Topic() for their malicious purposes, usually by intentionally programmed remote access (Example: Lizard_Sphere_X). To clarify, this example is an example of remote access being used to destroy the project files of itself. This example does not go further than that. Thankfully BYOND itself isn't stupid, so it wont allow access outside the project folder unless someone does something incredibly crafty. This is still a problem. Anything you put in with that project, an icon, text, anything that's your own files is now potentially a target. There are many reasons why these files could be here. Maybe you saved something into plain text, maybe someone sent you a file over the program, etc.

Quite simply I'm tired of developers using this method to circumvent Win Vista/7 UAC alerts to start destroying everything in that folder. It's retarded, and personally I think it needs to be fixed before someone takes this tiny hole and shreds it into a giant security flaw.

Disable remote access from other programs anyone?

And that's my rant.
This should go here, I think.
In response to Tensa Soul
Tensa Soul wrote:
This should go here, I think.

Unless it suddenly became a bug in past three years...
Ultimately, if you don't like it, don't play/host their game. BYOND already restricts a program's access outside of trusted mode, so there's no real "security" threat here.

There was a big argument about this "idea" a while back, as to whether the developer or host of a game ultimately has control over it. Obviously, a consensus will never be reached on such a topic, so it's up to whoever can enforce/protect themselves to do so.
In response to DarkCampainger
This isn't about control. The security threat is quite glaring actually. Sniff the packets being transferred, reverse engineer a few communications to see what's going on, design your own remote, now you can just screw with people because the dev left the hole wide open and BYOND allows it.

GG.

Now back to control, I don't care if a developer wants to disable access to his 'game' or whatever, to revoke their license by being a backdoor by all literal definitions of the word (I wish a few other commercial games would try this so I could actually sue for higher than the court costs). What I care about is when they go touching files that aren't theirs, just because it happens to be in the same folder.
I'm tired of this guy, and Falacy, running around BYOND spreading their lies and trying to ruin my game and my reputation. If you need proof of this see the Feedback section of my game (http://www.byond.com/games/Lizard_Sphere_X/1) where they have been constantly harassing me.

In fact, I was just about to report them for their constant harassment over lies they keep making up 5 minutes before spreading them.

Get a life. I've never done anything to you. Not my fault your jealous my game is more popular than yours.
In response to Lizard_Sphere_X
This topic is not a place to troll, flame, etc. Please do not post here. If you read the topic further you'll notice the universe, and this post, do not revolve solely around you.
In response to Stevenw9
Stevenw9 wrote:
This topic is not a place to troll, flame, etc. Please do not post here. If you read the topic further you'll notice the universe, and this post, do not revolve solely around you.

The fact that you try to warp my response to fit your agenda is good evidence against you. It's very annoying too.

So your saying responding to this obvious attack by you: "There are countless developers who have and continue to use Topic() for their malicious purposes, usually by intentionally programmed remote access (Example: Lizard_Sphere_X)."

Is trolling and flaming? So I can't defend myself against your false claims? I don't use Topic() for any malicious purposes.

Once again see the Feedback section of my game if you want absolute proof that you should not believe anything this guy says.
In response to Lizard_Sphere_X
You have purposely created a remote access program to maliciously (because we're playing word games now, by malicious I mean with the intent to harm) destroy your own game. If you want to discuss the legality or morals of this, you need to create a new topic.
In response to Stevenw9
Stevenw9 wrote:
You have purposely created a remote access program to maliciously (because we're playing word games now, by malicious I mean with the intent to harm) destroy your own game. If you want to discuss the legality or morals of this, you need to create a new topic.

No, you need to stop spreading your lies. Just because you keep repeating something won't make it true. I've already said it's false. How about some evidence? Oh that's right, you don't have any. Whereas if this escalates far enough I can provide evidence that your lying.

I'm done here.
In response to Lizard_Sphere_X
I'm not spreading lies LSX (AKA Tenshaku/Dragonn). Everyone knows you've used a remote program to destroy your own game, I've even watched BYOND staff acknowledge this, but this topic isn't about why or for what reasons you can or cannot do this. This topic is about people taking it a step further to delete files that dont belong to a project. Please read the post. Please stop derailing my topic.

Also I can submit Dragonball Finale as proof since you haven't taken it off your file sharing site there, but the thing is, no one cares, and that's why my topic isn't aimed solely at you.
In response to Stevenw9
Stevenw9 wrote:
This isn't about control. The security threat is quite glaring actually. Sniff the packets being transferred, reverse engineer a few communications to see what's going on, design your own remote, now you can just screw with people because the dev left the hole wide open and BYOND allows it.

You're saying that someone can spoof world.Topic calls that'll cause something bad to happen in the game? I don't see the problem.

If you can call world.Topic in a way that screws up the game that's the game developer's mistake. If there's a malicious action that can be triggered by world.Topic, it's your mistake for playing the game. In that last case, it also doesn't matter that it's triggered by world.Topic, it could be triggered by anything in the game. Suppose I make the Punch() verb create a 1 MB save file every time you use it. By the time you're level 10 you'll have punched about 1000 times and will have lost 1 GB of hard drive space. How would you prevent that?

If you don't like what a program does to your computer, don't run it.
In response to Forum_account
You're right. I'd be stupid to allow it to happen, but at the same time, it's not like it takes much to hide it. In fact, don't even mention it in your project and no one's likely to know. At the same time, I suppose this is what the security settings would be for in say, Dream Daemon or Dream Seeker. Then again, if the developer is the one hosting it, again, say nothing.

Yes, I'm extremely paranoid. It's a hole someone COULD abuse but is not LIKELY to. It worries me regardless.

The only thing I'd want is to be able to stop these topic calls as like, a check setting in Daemon, or something similar, and a way to know if this setting is enabled from the DS end. Some sort of extra customization of security. But that has other implications as well so it's not something I feel worth a 'feature request' just yet. There's a forum of ideas to be had first, and there tends to be better ones than mine.
Don't trust it? Don't host it. Simple.

The individual is ultimately responsible for the maintenance and security of their hardware. BYOND provides plenty of reasonable safeguards via it's security sandbox, such that when this sandbox is employed by the individual, their hardware is reasonably protected against critical data loss. Ultra-safe mode in particular will ask you about all file accesses, making it perfect for the paranoid individual.

world/Topic() has a myriad of use-cases for a developer, many of which are perfectly benign, friendly and useful for the developer's particular intended gaming experience. Being able to rely on it being there and allowed is also an invaluable property of world/Topic(), that you simply could not get via world-to-world communication alternatives such as DLL calling.

What you are complaining about is not the feature at all, but specific use-cases that specific developers have chosen to implement. You say you are tired of problems with this, but that answer is quite simple: You are not using BYOND's access controls correctly.

You also have another problem in that you are apparently repeatedly hosting worlds from developers you apparently should not be trusting. BYOND will not nanny you on this, it would be absurd to do so. That's like proposing ISPs have built-in features for customers to use to filter any arbitrary content that happens to offend them. It's absurd, because they do, it's called not going to websites they don't like or trust, or in the case of total paranoia, not turning on the PC.

As a final point of note, this is BYOND Discussion, not BYOND rants. This could have been an interesting topic of open discussion on BYOND security controls in general, their direction, suitability etc. There are ways of bringing about these discussions. The approach you adopted is not one of them.