Opublikowano 20 Sierpnia 20231 r Cześć wszystkim,😊 Podczas przeglądania kodu znalazłem problem w funkcji 'do_shutdown'. W oryginalnym kodzie nie było sprawdzania, czy wskaźnik postaci (ch) jest nullem, a jednak próbował korzystać z metod związanych z postacią, co mogło prowadzić do niezdefiniowanego zachowania. Co więcej, funkcja nie sprawdzała, czy dana postać posiada uprawnienia GM przed próbą wyłączenia serwera, co stanowiło potencjalne ryzyko związane z bezpieczeństwem. 🧩 Rozwiązanie: 📂 Lokalizacja pliku: 'game -> cmd_general.cpp' 🔍 Szukamy funkcji: 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się 🔄 Zmieniamy na poprawioną wersję: 🔐 Ukryta Treść 🔐 Zaloguj się lub Zarejestruj się W powyższej wersji dokonałem następujących zmian: Zabezpieczyłem kod przed niebezpiecznym dostępem do metody GetName(), jeśli wskaźnik ch jest nullem. Dodałem kontrolę uprawnień GM, aby upewnić się, że tylko postacie z odpowiednimi uprawnieniami mają możliwość wywołania tej funkcji.
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.