It's pretty easy to implement a time difference measurement in the signal which measures the signal travel time to and from the drone. This directly correlates to a (max) distance. There is no way to modify the signal velocity, but this lag still needs to be processed and flip a bit at some value, which theoretically could be removed/spoofed with a software hack.
Why would DJI put this limit in though. I can understand if they for example put 500m altitude and 5000m range limit. But close to 18km makes not much sense from a safety perspective.
Maybe its not a feature, but a bug, but DJI will have pretty much zero intensive to fix it.
What about Litchi way-point missions? I thought it was possible to have it fly a mission without being connected to the remote. This should allow it to pass the limit.