EssentialsX

EssentialsX

2M Downloads

/home from another world ignores "force-disable-teleport-safety" option

rafaelsms opened this issue · 5 comments

commented

Type of bug

Exploit, Other unexpected behaviour

/ess version output

[17:39:38 INFO]: CONSOLE issued server command: /ess version
[17:39:38 INFO]: Server versão: 1.17.1-R0.1-SNAPSHOT git-Tuinity-18 (MC: 1.17.1)
[17:39:38 INFO]: Brand versão: Tuinity
[17:39:38 INFO]: EssentialsX versão: 2.19.0-dev+221-1556b91
[17:39:38 INFO]: LuckPerms versão: 5.3.51
[17:39:38 INFO]: Economy Layer: None
[17:39:38 INFO]: O Vault não está instalado. Chat e permissões podem não funcionar.
[17:39:38 INFO]: Buscando informações da versão...
[17:39:38 INFO]: Você está utilizando a versão mais recente do EssentialsX!

Server startup log

https://paste.gg/p/anonymous/8f9556d633e549e7b8ba45fc1172108e

EssentialsX config files

https://paste.gg/p/anonymous/f9fe2b647f5b4fd7bc1647898374985e

Error log (if applicable)

No response

Bug description

After using /home coming from another world, somehow the location is translated to a safe one (moving through the Y axis), which is undesired behaviour since it works as it should (suffocating the player on a unsafe location given "force-disable-teleport-safety") when teleporting through the same world.

For my server, it is a teleport exploit, which can be very bad. So I marked this as an exploit.

Steps to reproduce

How it works when coming from the same world

  1. Dig a hole
  2. Use /sethome
  3. Place any solid block on the /sethome location two times, closing the entire home location
  4. Use /home
    You will suffocate when on survival

How it works when coming from another world
5. Go to another world, through /world world_the_end for instance
6. Use /home
You will incorrectly be teleported upwards.

Expected behaviour

As explained by step 4, you would suffocate, since force-disable-teleport-safety is enabled.

Actual behaviour

As explained by step 6, you arrive safe and sound on a location that you shouldn't have access.

commented

Confirmed:

[12:10:21 INFO]: Server version: 1.17.1-R0.1-SNAPSHOT git-Paper-100 (MC: 1.17.1)
[12:10:21 INFO]: Brand version: Paper
[12:10:21 INFO]: EssentialsX version: 2.19.0-dev+221-1556b91
[12:10:21 INFO]: LuckPerms version: 5.3.48
[12:10:21 INFO]: Vault version: 1.7.3-b131
commented

Confirmed an upstream bug, can be "fixed" by enabling "disable-teleportation-suffocation-check" in the paper.yml config. I will be discussing this with the Paper team to see if this is their intended behavior.

commented

I didn't find anything wrong with the source code. May be from upstream. Couldn't test it though because Essentials doesn't have a world parameter to the teleport command (which is expected).

commented

It does: /tppos x y z yaw pitch world

commented

Oh thank you! Didn't know this command. The issue happens with /tppos as well.