myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
3 страниц V   1 2 3 >  
Ответить в данную темуНачать новую тему

> Скрипт бана читеров, использование greylink против читов

Теги
Нет тегов для показа
Setuper
сообщение 25.5.2009, 17:05
Сообщение #1


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Вот накатал скрипт для бана читеров.
Используем грейлинк, для того, чтобы банить читеров big_smile.gif

Название скрипта: cheats-detector
Версия: 1.1
Автор: Setuper
Описание: Ловит несоответствия в размере шары. В действиях можно указать бан пользователя.
Команды:
/checkshare nick - проверка пользовтеля с указанным ником
/checkshare - проверка всех пользователей данного хаба
/luafile startup.lua - команда запуска скрипта
/lua dcpp = nil - команда остановки скрипта

Для работы скрипта в папке lua должны находиться библиотеки lua32.dll и dcutil32.dll (или соответствующие 64 разрядные)
Сам скрипт кидаем в папку scripts. Скрипт будет запускаться автоматически при старте клиента.

Открываем файл Settings/CustomMessages.ini и дописываем туда:
Код
/lua dcpp = nil
/luafile startup.lua
/checkshare
После этого можно будет не запоминать команды, а юзать меню "пользовательские сообщения".


Пока что функционал скриптов не позволяет проверять пользователей при входе на хаб, поэтому для того чтобы проверить пользователя(ей) приходится вводит команды вручную.

Юзаем и отписываем сюда если что не так big_smile.gif


Прикрепленный файл  startup.lua ( 4.45 килобайт ) Кол-во скачиваний: 150


Спасибо сказали:
Go to the top of the page
+Quote Post
ustas
сообщение 25.5.2009, 19:24
Сообщение #2


Продвинутый участник
****

Группа: Пользователи
Сообщений: 177
Регистрация: 20.5.2008
Пользователь №: 5
Спасибо сказали: 26 раз




немного изменил код, добавил
Код
local sMsg1 = [[Юзер [NI] с IP: [I4] не балуется читами
    Тэг: [TAG]
    Размер файл-листа: [SIZE] байт
    Шара: [SS] байт
]]

и
Код
function dcpp.OnDownloadFinished(sFile, uid)
  local iSize, tUser, tList = 0, tAPI:GetUserInfo(uid), dcutil.loadlist(sFile..".xml.bz2")
  for _, v in pairs(tList) do
    iSize = iSize + v.size
  end
  if iSize < tonumber(tUser.SS) then
    tAPI:new():SimPublicMessage(tUser.HL, tAPI:ToUtf8(("<%s> "):format(sBot)..SetParams(tUser, sMsg):gsub("%[SIZE%]", iSize)))
    if sAction then
      tAPI:new():SendPublicMessage(tUser.HL, tAPI:ToUtf8(SetParams(tUser, sAction)))
    end
    else
    tAPI:new():SimPublicMessage(tUser.HL, tAPI:ToUtf8(("<%s> "):format(sBot)..SetParams(tUser, sMsg1):gsub("%[SIZE%]", iSize)))
  end
end


и проверил, вот что получилось
Цитата
[2009-05-25 20:14] :?? <LUABOT> Проверяю файл-лист пользователя: ustas
[2009-05-25 20:17] :?? <LUABOT> Юзер ustas с IP: 127.0.0.1 не балуется читами
Тэг: <UstasDC++ V:1.0,M:A,H:0/0/2,S:3,L:5128>
Размер файл-листа: 917406161892 байт
Шара: 912392882203 байт

размеры разные. Читы отключены
проверяет 3 минуты - это нормально? (100 мбит)
p.s. 3 минуты из-за большой шары, для шары 50 Мб почти мгновенно
баг - после того, как запустил проверку юзера, когда пытаюсь скачать файллист другого юзера, тоже выполняется его проверка
Go to the top of the page
+Quote Post
Delion
сообщение 25.5.2009, 19:35
Сообщение #3


Постоялец
******

Группа: Пользователи
Сообщений: 462
Регистрация: 20.10.2008
Пользователь №: 843
Спасибо сказали: 15 раз




Цитата
Ловит несоответствия в размере шары

Непонятно. Что в точности он делает?
И будет ли работать в других клиентах с поддержкой LUA?
Go to the top of the page
+Quote Post
Setuper
сообщение 25.5.2009, 19:47
Сообщение #4


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Размеры разные допускаются.
Это происходит из-за того, что при хешировании некоторые файлы (не фильмы) немного сжимаются, поэтому подсчитывая размер всех действительных файлов и размер хешированых файлов, получаем, что последний размер меньше, поэтому условие обнаружения чита - это условие, когда размер файл-листа мельне размера шары.

Можно использовать небольшие читы и детектор не сработает. Он будет срабатывать только при явном завышении шары, при завышении примерно на 3%.

ustas: Насчёт твоей дописки, не вижу в ней смысла. Это только будет не по детски грузить клиент (как раз минуты 3). Нужно выводить сообщение только если найден чит!

Кстати говоря, в сообщении sMsg можно использовать следующие тэги:
Код
    [NI] -- ник
    [I4] -- ip
    [DE] -- описание
    [EM] -- email
    [SS] -- точная шара
    [SSshort] -- форматированния шара
    [TAG] -- тэг
    [TA] -- тэг
    [VE] -- версия клиента
    [US] -- тип соединения
    [CO] -- тип соединения
    [HN] -- hubs unreg
    [HR] -- hubs reg
    [HO] -- hubs op
    [SL] -- слоты
    [ST] -- магический байт
    [AW] -- режим away (== "1" иначе nil)
    [LOC] -- местоположение
    [OP] -- статус оператора (== "1" иначе nil)
    [HL] -- хаб
    [ME] -- я (== "1" иначе nil)
    [RG] -- зарегистрирован на данном хабе


В других клиентах с поддержкой lua совершенно другие функции api, поэтому работать не будет однозначно. Сомневаюсь, что другие клиенты с поддержкой lua настолько же богаты api функциями.
Go to the top of the page
+Quote Post
ustas
сообщение 25.5.2009, 19:50
Сообщение #5


Продвинутый участник
****

Группа: Пользователи
Сообщений: 177
Регистрация: 20.5.2008
Пользователь №: 5
Спасибо сказали: 26 раз




Цитата(Setuper @ 25.5.2009, 20:44) *
Насчёт твоей дописки, не вижу в ней смысла. Это только будет не по детски грузить клиент (как раз минуты 3). Нужно выводить сообщение только если найден чит!
согласен. Просто хотел проверить, как работает.
Go to the top of the page
+Quote Post
Setuper
сообщение 25.5.2009, 20:00
Сообщение #6


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Цитата(ustas @ 25.5.2009, 20:24) *
баг - после того, как запустил проверку юзера, когда пытаюсь скачать файллист другого юзера, тоже выполняется его проверка

Это не баг. Проверка будет выполняться при любом скачивании файл-листа, в противном случае, если делать проверку только по команде, то нагрузка на проверку того, что я качаю файл-лист только для проверки будет значительной.

Безусловно лучше конечно делать проверку юзеров непосредственно при их входе на хаб, однако такой функции пока нет.
Go to the top of the page
+Quote Post
ustas
сообщение 25.5.2009, 20:16
Сообщение #7


Продвинутый участник
****

Группа: Пользователи
Сообщений: 177
Регистрация: 20.5.2008
Пользователь №: 5
Спасибо сказали: 26 раз




добавил в грее 100 ГБ
Цитата
[21:14:29] <LUABOT> Юзер ustas с IP: 127.0.0.1 не балуется читами
Тэг: <UstasDC++ V:1.0,M:A,H:0/1/1,S:3,L:5128>
Размер файл-листа: 1025778261638 байт
Шара: 1020764981949 байт

фейк шару не определил
Go to the top of the page
+Quote Post
Setuper
сообщение 25.5.2009, 20:34
Сообщение #8


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Мда... Под петабайт слишком большая шара.
Если у человека расшарено под петабайт, то не думаю, что он будет подделывать шару, и даже если и будет, то это не так важно. big_smile.gif
В общем из-за сжатия конечно косяк.
Go to the top of the page
+Quote Post
ustas
сообщение 25.5.2009, 20:44
Сообщение #9


Продвинутый участник
****

Группа: Пользователи
Сообщений: 177
Регистрация: 20.5.2008
Пользователь №: 5
Спасибо сказали: 26 раз




Цитата(Setuper @ 25.5.2009, 21:34) *
Мда... Под петабайт слишком большая шара.
Если у человека расшарено под петабайт, то не думаю, что он будет подделывать шару, и даже если и будет, то это не так важно. big_smile.gif
В общем из-за сжатия конечно косяк.

оставил только фейк шару
Цитата
[21:40:37] <LUABOT> Юзер ustas с IP: 127.0.0.1 не балуется читами
Тэг: <UstasDC++ V:1.0,M:A,H:0/1/1,S:3,L:5128>
Размер файл-листа: 104857909510 байт
Шара: 104857909510 байт
Go to the top of the page
+Quote Post
Setuper
сообщение 25.5.2009, 20:49
Сообщение #10


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Хехе.
Данный скрипт не проверяет подлинность файл-листа, он только сравнивает шару и размер файлов в файл-листе.
Для проверки нужно скачать случайный файл, что в принципе можно реализовать в скрипте.
Go to the top of the page
+Quote Post
ustas
сообщение 25.5.2009, 20:54
Сообщение #11


Продвинутый участник
****

Группа: Пользователи
Сообщений: 177
Регистрация: 20.5.2008
Пользователь №: 5
Спасибо сказали: 26 раз




Цитата(Setuper @ 25.5.2009, 21:49) *
Для проверки нужно скачать случайный файл, что в принципе можно реализовать в скрипте.

допустим у меня реальная шара 50 ГБ + фейков на 50 ГБ. Все файлы качать нереально, тогда как скрипт определит, что вот этот файл фейковый, а этот реальный?
Go to the top of the page
+Quote Post
Setuper
сообщение 25.5.2009, 21:03
Сообщение #12


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Никак. Повторяю, что данный скрипт предназначен только против настройки "плюс к шаре"!
Против подделки файл-листа методов борьбы думаю, что нету.
Go to the top of the page
+Quote Post
ustas
сообщение 25.5.2009, 21:29
Сообщение #13


Продвинутый участник
****

Группа: Пользователи
Сообщений: 177
Регистрация: 20.5.2008
Пользователь №: 5
Спасибо сказали: 26 раз




Цитата(Setuper @ 25.5.2009, 22:03) *
Никак. Повторяю, что данный скрипт предназначен только против настройки "плюс к шаре"!
Против подделки файл-листа методов борьбы думаю, что нету.
Так в грее при использования "+ к шаре" как раз используется фейковая шара. Т.е. грей не отловить. Жаль
Go to the top of the page
+Quote Post
FallenAngel
сообщение 25.5.2009, 22:28
Сообщение #14


[n00b]
*****

Группа: Пользователи
Сообщений: 291
Регистрация: 10.7.2008
Из: Россия,Пенза
Пользователь №: 168
Спасибо сказали: 24 раза




Обнаружен читер!
Ник: [PNZ]Джони
IP: IP
Тэг: <gl++ V:5.57,M:A,H:6/1/0,S:16>
Размер файл-листа: 25097765796 байт
Шара: 25946967410 байт

[23:20:33] <[=БОТ=]> *** Ошибка [PNZ]Джони не на хабе.

Потом по IP посмотрел- ник у юзера [PNZ]Джони
С этим как бороться?big_smile.gif Ну я то его вручную забанил. А эт "на заметку" чтоль..
Go to the top of the page
+Quote Post
Setuper
сообщение 25.5.2009, 22:49
Сообщение #15


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Исправил баг. Скрипт перезалил.
Go to the top of the page
+Quote Post
FallenAngel
сообщение 26.5.2009, 7:20
Сообщение #16


[n00b]
*****

Группа: Пользователи
Сообщений: 291
Регистрация: 10.7.2008
Из: Россия,Пенза
Пользователь №: 168
Спасибо сказали: 24 раза




Хм... А как именно определяется несоответствие шар? А то выдает несколько ников- якобы у них шара поддельная, но проверяю сам файлист у них-но шара нормальная вполне. Нету ни одного "лишнего" файла...
Go to the top of the page
+Quote Post
Delion
сообщение 26.5.2009, 10:04
Сообщение #17


Постоялец
******

Группа: Пользователи
Сообщений: 462
Регистрация: 20.10.2008
Пользователь №: 843
Спасибо сказали: 15 раз




Цитата
Данный скрипт не проверяет подлинность файл-листа, он только сравнивает шару и размер файлов в файл-листе

Пффф. Без обид,но ты изобрёл велосипед.
Очередная неудавшаяся пиар-акция Грея.
Go to the top of the page
+Quote Post
Setuper
сообщение 26.5.2009, 12:17
Сообщение #18


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Возможно.
Возможно данный вариант скрипта не совсем хорош, однако сам факт наличия достаточного lua функционала открывает перед lua прогерами широкие перспективы. Если будут предложения как подругому реализовать обнаружение читеров я готов реализовать.
Go to the top of the page
+Quote Post
Otshelnik-Fm
сообщение 26.5.2009, 22:26
Сообщение #19


Я коварный Санта Клаус
******

Группа: Пользователи
Сообщений: 523
Регистрация: 4.11.2008
Из: Саратов
Пользователь №: 985
Спасибо сказали: 54 раза




Всё сделал как написано в первом посте. Запускаю клиент - пишет что скрипт запущен... а дальше ничего не происходитю Как действовать? запускаю командой /checkshare -
Цитата
[02:32:13] <LUABOT> Проверяю файл-листы всех пользователей
- и за сутки ничего в чат так и не выдало. В чем причина? Знаю что из 200 человек один но с обманной шарой.

Сорри - Надо скачать файл листы со всех пользователей!

Разобрался

а вот это нормально?

Цитата
[23:12:50] <LUABOT> Обнаружен читер!
Ник: paiper
IP: 95.84.48.214
Тэг: <ApexDC++ V:s14,M:A,H:12/0/0,S:9>
Размер файл-листа: 33691368196 байт
Шара: 33796225796 байт
- в списке файлов написал 31.38 Гб шара

С виду вроде нормальная шара - ну отличается она на 2 гига от того что написал бот
. А другой юзер с 200 гигами fdgjhfjhbgjbndgjkbndjghnb.avi файлов и 50 гигами нормальных файлов - не забанен. так смысл в этой "фишке"?

Стоит не банить юзера а просто выдавать админу в чат что подозрительный юзер на хабе...
Закоментировав 27 строку
Код
local sAction = "!ban [NI] Подделка шары"
- я же не буду банить пользователей?
Go to the top of the page
+Quote Post
Setuper
сообщение 26.5.2009, 22:56
Сообщение #20


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Ещё раз повторяю, что скрипт предназначен против циферного добавления шары. Скрипт не отлавливает подделанные файл-листы.

Для отключения бана нужно просто не ставить действие:
Код
local sAction = nil
или так
Код
local sAction = false
Go to the top of the page
+Quote Post

3 страниц V   1 2 3 >
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No new Topic has attachmentsНерабочий скрипт ВИПа по шаре
16 Damaks 20 047 23.2.2023, 7:16 Посл. сообщение: mod
No New Posts Перехват выполнения бана(ов) PtokaX
Возможно ли?
0 MIKHAIL 1 220 1.8.2022, 10:31 Посл. сообщение: MIKHAIL
No new Topic has attachmentsMagneto - Бесплатный Скрипт Портала Обмена Dc-ссылками Для Локальной Сети
26 UserSide 41 239 27.8.2019, 11:01 Посл. сообщение: CyberGhost404
No New Posts От: Новогодний Скрипт
От темы с ID: 871
0 Евгений 3 182 15.10.2018, 21:44 Посл. сообщение: Евгений
No New Posts А бывают такой скрипт бота?
Скрипт который создает виртуалных юзеров, но с реальными шарами
5 MarkDark 8 136 26.12.2017, 10:47 Посл. сообщение: мамин_парень
No New Posts Скрипт: Бот который отвечает в лс
4 мамин_парень 7 817 11.11.2017, 5:57 Посл. сообщение: мамин_парень
No New Posts как сделать вот этот скрипт
12 мамин_парень 12 575 13.9.2017, 10:51 Посл. сообщение: dimetro
No New Posts Topic has attachmentsИщу скрипт переадресации (redirect)
Переадресация интернет-юзеров
3 AS_Com 7 214 27.8.2017, 8:05 Посл. сообщение: Ksan
No New Posts Topic has attachmentsСкрипт Thunder.lua
7 Евген76 15 315 9.8.2017, 11:48 Посл. сообщение: Ksan
No New Posts Требуется скрипт
Нужен скрипт запрета на подключение
5 Nikolaevich 9 499 20.8.2016, 19:52 Посл. сообщение: Ksan
No new ВАЖНО: Topic has attachmentsСкрипт банов для RusHub
тестим и комменьтруем
79 Wariner 104 604 28.9.2015, 13:34 Посл. сообщение: NeirRon
No New Posts Скрипт загрузки файла
1 FreeNas 6 426 21.7.2015, 10:58 Посл. сообщение: HackFresse
No new Как вызвать bash скрипт из Lua
14 Iskandark 17 317 3.3.2015, 12:42 Посл. сообщение: Iskandark
No new Topic has attachmentsНовогодний Скрипт
API2
22 Tsd 35 632 12.12.2014, 16:28 Посл. сообщение: Tsd
No New Posts Скрипт запрета видеть чат
запрет видеть чат
2 dimetro 7 292 5.12.2014, 17:37 Посл. сообщение: dimetro

 



RSS Сейчас: 27.11.2024, 3:18