Skocz do zawartości

[Plugin] ExploitPatch - łatka na exploity nbt i timestamp dla armanimation

Od ostatniej odpowiedzi w tym temacie minęło 210 dni. Pamiętaj, że odkopywanie takich tematów jest niewskazane, chyba że chcesz wnieść coś nowego do dyskusji.

Polecane posty

Autor tematu Napisano (edytowany)

Tak jak w temacie, plugin (mam na dzieje) fixuje wiekszosc exploit nbt poprzez sprawdzanie kazdej listy, kazdego tagu - i ich wielkosci - zbyt duze wielkosci = kick

github: https://github.com/yooniks/casual-exploitpatch plik jar: klik do githuba, releases

 

Można dodać jeszcze swój "checker" nbt do aktualnych w bardzo łatwy sposób, dorobić inny connectioncloser (defaultowy zamyka polaczenie poprzez nowego taska, bo w async nie moge tego zrobic)

Fix pod arm-animation przydatny tylko (chyba) ponizej 1.11 (cos kolo tego) bo na wyzszych wersjach juz jest dawno timestamp pod armanimation.

Tak samo z block-placem, jak bedzie walilo errory od klikania ppm to wylaczyc block-place w configu trzeba, bo pakiet nie zawiera itemstacka w wyzszych wersjach

Mogłbym zamiast sprawdzania nbt po prostu walnąć tam zastepowanie nowego itemu innym, z usunietym nbt (tylko te same atrybuty, nazwa, lore itd) ale niektore serwery dodaja jakies potrzebnych rzeczy do nbt w itemach, wiec takie usuwanie nie mialoby troche sensu

Edytowano przez toWcaleNieOn_;/
usuniecie ')' z linku

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Pani Kasia

ale slabe, moje lepsze

Edytowano przez vocanXD

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Pani Kasia

1 godzinę temu, єяιρѕσи napisał:

Link do githuba nie działa :)

Ty masz tylko taki problem.

 

Dzięki za łatki :)


4Headzik

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@renexo

 

No raczej nie bo u mnie tez nie działa ^^

 

Zapomniałem dodać - Nie działa dlatego że na końcu linku jest )

Edytowano przez AlexsanderARG

SMW0zFq.png

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
11 godzin temu, AlexsanderARG napisał:

@renexo

 

No raczej nie bo u mnie tez nie działa ^^

 

Zapomniałem dodać - Nie działa dlatego że na końcu linku jest )

 

15 godzin temu, єяιρѕσи napisał:

Link do githuba nie działa :)

Poprawione ;)

W razie nowych exploitów zapraszam na pv z logami, fixne za darmo.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Pani Kasia

:/ ok pytanko
jak dziala ten nbt expolit ?, gracz ma mozliwosci zmiany nbt przemiotow ? co z customowymi nbt ?

(nie do konca orientuje sie w nbt) nbt moze miec złozoną struktore jak ja sprawdzasz ?



 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Autor tematu Napisano (edytowany)
23 godziny temu, damianq20 napisał:

:/ ok pytanko
jak dziala ten nbt expolit ?, gracz ma mozliwosci zmiany nbt przemiotow ? co z customowymi nbt ?

(nie do konca orientuje sie w nbt) nbt moze miec złozoną struktore jak ja sprawdzasz ?



 

Zazwyczaj takie nbt exploity działają tak, że gracz wysyła pakiet (najcześciej z jakiegoś klienta w "proxy", przez takie proxy mozna laczyc sie na inne serwery, protocol jest identyczny jak zwyklego gracza, tylko ze na tym proxy mozesz sobie wpisac np. komende jakas i po prostu to sprawdzasz w proxy i jezeli wiadomosc to xxx to wysylasz jakies tam pakiety do serwera do ktorego jest podlaczony gracz na proxy), pakiet - np. windowclick i w nim po prostu itemstack z ogromnym nbt, np. ksiazka z 45000 stronami (w normalnym kliencie podczas tworzenia ksiazki mozna utworzyc tylko 50 stron) i gracz nie musi posiadac tego itemu w ekwipunku, serwer to i tak czyta, az sie po prostu przeciaza, np:

  private ItemStack createBigBook() {
    final List<Tag> pages = new ArrayList<>();
    for (int i = 0; i < 45000; i++)
      pages.add(new StringTag("hello world"));

    final ListTag list = new ListTag("pages", pages);
    final CompoundTag book = new CompoundTag("");
    book.put(list);

    return new ItemStack(386, 1, 0, book);
  }

a w pluginie po prostu sprawdzam wielkość takich list i tagów i to powinno pomóc, testowalem pelno exploitów i ładnie blokuje, tutaj jakis payload: https://pastebin.com/6qzieTyx, niestety nie chcialo mi sie bawic w sprawdzanie tego co gracz wysyla w payloadzie podczas edycji ksiazki bo za duzo roboty i na innych wersjach wywalalo mi bledy, a na innych dzialalo - wiec po prostu od razu zablokowalem podpisywanie i edycje ksiazek (tutaj moj bardzo stary projekt https://github.com/yooniks/SuperProxy/blob/master/src/main/java/xyz/yooniks/proxy/helper/PacketHelper.java kod porazka, no ale jakos tam dziala mniej wiecej)

Edytowano przez toWcaleNieOn_;/

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

exploit z ksiazka jest naprawiony na najnowszych wersjach ...
- jesli serwer przyjmuje od gracza np przedmiot ze zmienionymi nbt to można zrobic strukturę danych i ukryc kilka/kilkaset pustych stringow wiec algorytm z ktorego ty kozystasz sie nie sprawdzi :/
- kolejna sprawa to ze nie wydaje mi sie aby byla jakakolwiek mozliwosc ingerencji w nbt z zewnatrz :l, wszystkim zarzadza serwer , jesli bylo by inaczej to pierwszy lepszy cheat pozwalal by na dodawania przedmiotow z nieba czy chociazby ich enchantowanie , a sama opcja przekazania "nbt" poprzez protokol do serwera to ulatwienie zycia moderom , czy innym cudom jak np spoutcraft.

 

z ksiazka to akurat przyklad nietrafiony :l , bo ksiazka ma wlasny pakiet i na nim opieral sie caly crash""

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
19 godzin temu, damianq20 napisał:

exploit z ksiazka jest naprawiony na najnowszych wersjach ...
- jesli serwer przyjmuje od gracza np przedmiot ze zmienionymi nbt to można zrobic strukturę danych i ukryc kilka/kilkaset pustych stringow wiec algorytm z ktorego ty kozystasz sie nie sprawdzi :/
- kolejna sprawa to ze nie wydaje mi sie aby byla jakakolwiek mozliwosc ingerencji w nbt z zewnatrz :l, wszystkim zarzadza serwer , jesli bylo by inaczej to pierwszy lepszy cheat pozwalal by na dodawania przedmiotow z nieba czy chociazby ich enchantowanie , a sama opcja przekazania "nbt" poprzez protokol do serwera to ulatwienie zycia moderom , czy innym cudom jak np spoutcraft.

 

z ksiazka to akurat przyklad nietrafiony :l , bo ksiazka ma wlasny pakiet i na nim opieral sie caly crash""

 

Cytat

bo ksiazka ma wlasny pakiet 

tak, ale jest dopiero od 1.13, no ale to samo mozna zrobic z np. beaconem, ogromne lore mu walnac do display, sprawdzi sie, testowane kilka proxy (nawet te "najlepsze"), no nei wiem jak tu nbt da sie ukryc, jestem ciekaw jak ktos zrobi to i nagra jak to obchodzi

Cytat

wszystkim zarzadza serwer , jesli bylo by inaczej to pierwszy lepszy cheat pozwalal by na dodawania przedmiotow z nieba czy chociazby ich enchantowanie ,

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Pani Kasia

dalej nie wiem jak to dziala :l , ani nie rozumie wiec w to nie wierze :*

fakt mozna wyslac nbt tagi w pakiecie ale (pakiet ma swoja dlugosc ktorej nie nadpiszesz ) nbt ktore wysyla gracz nie jest brane pod uwage przez serwer (i tu moge sie mylić choć jest to malo prawdopodobne)

teraz mozliwosci jak to dziala
1 wysyla mase sprzecznych (losowych) pakietow od zarzadzania okienkiem eq
2 tworzy wiele fake userow ktorzy robia to samo co w pkt 1.

i to jest na tyle jesli chcesz wykrzaczyc serwer bukkitowy

beaconem tez nie wykrzaczysz https://wiki.vg/Protocol#Set_Beacon_Effect

chyba ze inny sposob

zawsze sa 2 sposoby aby wykrzaczyc za pomoca pakietow , wyslac ich za wiele , wyslac takie ktorych server nie jest w stanie zinterpretowac , tak jak w przypadku nieszczesnych edycji ksiazek gdzie serwer"" przyjmowal z gory poprawna ilosc stron w ksiazce

wystarczylo dac wieksza ilosc stron i bum serwer nie wiedzial co sie dzieje

 

 

chociaz czekaj bo ty piszesz o lore (nazwe) beacon jaka mozna nadac znacznikiem , hmm tutaj sam nie wiem , ale dalej obstawiam ze gracz i tak nie ma wplywu na nbt przedmiotow po stronie serwera

 

Edytowano przez damianq20

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Od ostatniej odpowiedzi w tym temacie minęło 210 dni. Pamiętaj, że odkopywanie takich tematów jest niewskazane, chyba że chcesz wnieść coś nowego do dyskusji.

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.


×
Okienko zamknie się za 5 sekund...