Os Melhores
Conteúdo popular
Mostrando conteúdo com a maior reputação em 05/18/25 in todas as áreas
-
Bom galera, estou compartilhando os files que nosso querido @miguelzera disponibilizou um tempo atrás. Arquivo 1 – script de instalação CentOS7 Arquivo 2 – PWServer, Cliente [email protected], libs e SQL Arquivo 3 – Tutorial CPW Arquivo 4 – Tutorial iptables Vídeo instalando pacotes centOS7 Créditos @miguelzera Assim que tiver tempo posto um vídeo. Imagem do vbox pronta, só importar para seu vbox. Acesso ao phpmyadmin – [Conteúdo Oculto] Senhas 123456789 Contem registro básico [Conteúdo Oculto] Download ova Download Cliente1 ponto
-
⚔️ Sistema de Ranking PvP Completo - In-Game + Web 💰 Valor Vitalício: R$ 300,00 📅 Aluguel Mensal: R$ 65,00 🔑 Licença vitalícia para uso em qualquer servidor Perfect World! 🧩 O que está incluído no pacote 🎮 Sistema In-Game Integrado 🏆 Rank PvP em tempo real, diretamente dentro do jogo 🔥 Sistema de Multi-Kill com efeitos e mensagens automáticas 📊 Logs detalhados por dia e por semana ⚔️ Rivalidade entre jogadores: detecta e destaca duelos frequentes 🎖️ Premiação Automática de Títulos por colocação no ranking ❌ Anti-farm e Anti-team kill: detecta abusos automaticamente 🛡️ Filtro de IP opcional para maior controle de manipulações 🚫 Penalidades com alertas automáticos in-game para jogadores que tentarem abusar 🎯 Missões PvP e desafios com recompensas bônus 🥇 Conquistas por marcos de kills (ex: 10, 50, 100...) com anúncios 🎁 Recompensas Diárias e Semanais para os mais ativos 🏅 Sistema de Ligas: Bronze, Prata, Ouro, Platina, Diamante e Mestre 📣 Mensagens automáticas no chat do jogo e também no Discord! 🌐 Painel Web Profissional 📊 Dashboard com Rankings Atualizados em Tempo Real 🧑💼 Perfil Detalhado do Jogador: kills, mortes, streaks, rivalidades, conquistas, liga atual, etc. 🔐 Editor de Ranking exclusivo para GMs com login protegido 🌍 Integração nativa com seu site oficial 📱 Design moderno e responsivo, compatível com celulares e tablets 📜 Logs e notificações administrativas via painel web 🎯 Diferenciais que vendem! Código otimizado, limpo e bem documentado Fácil integração com qualquer versão do seu servidor Atualizações frequentes e suporte dedicado Sem painel externo ou sistemas paralelos — tudo é feito nativamente 📢 Personalização Sob Medida Quer mudar o layout? Deseja adicionar um lado PvE exclusivo com ranking de monstros, dungeons ou conquistas PvE? ⚙️ Eu crio qualquer sistema sob-encomenda! 📽️ Demonstrações e Testes Envio vídeos do sistema em funcionamento Acesso de teste disponível: entre em contato e logue diretamente no servidor demonstrativo Veja com seus próprios olhos como o sistema se comporta! ⚠️ A versão atual está ainda mais avançada e completa do que a mostrada nas imagens. 📬 Interessado? Fale comigo agora mesmo: 📥 Inbox para vídeos e testes 💻 Desenvolvo sites, scripts e sistemas personalizados para qualquer necessidade de servidor PW! 0b671c75-3d04-4ec8-84fc-f2c1331132a1.jfif 1c14ee65-e5eb-4311-95ef-377dc5010f3c.jfif 095640e7-0ad4-4ca5-a2de-08144510d0a8.jfif1 ponto
-
Dear All Brazilian Friends, I share this perfect world panel, actually this panel base from @tomirons code. Download Link: [Conteúdo Oculto] NOTE: Still have bugs, try to fix by yourself Demo: [Conteúdo Oculto]1 ponto
-
Olá a todos, Estou enviando uma pequena contribuição contendo a descompilação da GS utilizada na versão compilada e publicada, segue um breve resumo do que se trata a descompilação. Observações, estarei anexando a descompilação gerada com a versão 7.6 do IDA, não irei publicar o IDA pois é uma ferramenta paga e as disponiveis são crackeadas, não quero assumir nem uma responsabilidade do que pode conter no crack. Com a descompilação, é possível analisar estruturas e novas funcionalidades no código, com o pseudocódigo gerado pelo IDA é possível realizar a migração do código disponibilizado e estável da V1.5.2 para a V1.5.5. Também é possível obter estruturas que foram alteradas, verificar funcionamento de novos pacotes ou novas inclusões e afins. Um ponto interessante, é que os arquivos compilados em Linux carregam consigo algo similar ao .PDB do Windows, contento informações como variaveis e afins, isso facilita pois não temos que criar as estruturas para entender o código. Também temos junto a isso algumas variaveis chaves no processo, como por exemplo: É uma breve contribuição mas espero poder ajudar a alguns que estão começando na área de desenvolvimento. Abçs! download.rar1 ponto
-
O iweb é o programa nativo para administrar o servidor, com o tempo foi substituido pelo painel do Alex. Com a source você pode consertar e implementar novas funções. Exige alto conhecimento de java para fazer correções ou implementações. ##iweb ## = representa as letras usadas para identificar o jogo. [Conteúdo Oculto]1 ponto
-
Caso esse limite seja ultrapassado, bloqueia o HWID (identificação única do hardware) e registra informações sobre o IP, quantidade de pacotes enviados e a data Instale o iptables-persistent e o pacote mysql-client sudo apt-get update sudo apt-get install iptables-persistent mysql-client Carregue o módulo xt_recent sudo modprobe xt_recent Regras do iptables sudo iptables -N HWID_BLOCK sudo iptables -A HWID_BLOCK -m recent --name HWID --set --mask 255.255.255.255 --rsource sudo iptables -A HWID_BLOCK -m recent --name HWID --update --seconds 86400 --mask 255.255.255.255 --rsource -j LOG --log-prefix "HWID blocked: " --log-level 4 sudo iptables -A INPUT -p tcp --dport 29000 -m connlimit --connlimit-above 25 --connlimit-mask 0 -j HWID_BLOCK sudo iptables-save | sudo tee /etc/iptables/rules.v4 Crie um script para salvar as informações no MySQL. Por exemplo, crie o arquivo /usr/local/bin/save_to_mysql.sh com o seguinte conteúdo Não se esqueça de criar um banco de dados chamado 'connections' #!/bin/bash IP_ADDRESS=$1 PACKETS=$2 DATE=$(date +"%Y-%m-%d %H:%M:%S") mysql -u <username> -p<password> -e "INSERT INTO connections (ip_address, packets, date) VALUES ('$IP_ADDRESS', '$PACKETS', '$DATE');" <database> Dê permissão de execução ao script sudo chmod +x /usr/local/bin/save_to_mysql.sh Adicione uma regra no iptables para chamar o script quando o limite de conexões for excedido. No exemplo abaixo, assumimos que o script está localizado em /usr/local/bin/save_to_mysql.sh: sudo iptables -A HWID_BLOCK -m recent --name HWID --update --seconds 0 --mask 255.255.255.255 --rsource -j LOG --log-prefix "HWID blocked: " --log-level 4 --nflog-prefix "iptables-save: " --nflog-group 1 --nflog-range 64 --nflog-threshold 10 sudo iptables -A HWID_BLOCK -m recent --name HWID --update --seconds 0 --mask 255.255.255.255 --rsource -j LOG --log-prefix "HWID blocked: " --log-level 4 --nflog-prefix "iptables-save: " --nflog-group 1 --nflog-range 64 --nflog-threshold 10 --nflog-cprange 128 --nflog1 ponto
-
1 ponto
-
E aí, galera! Tenho uma super novidade para compartilhar com todos vocês! Estou lançando meu site , repleto de skins de personagens famosos que desenvolvi ao longo dos últimos anos, e o melhor de tudo: elas são todas gratuitas! Este é apenas o começo, pois o site ainda está em construção e tenho muitas outras surpresas para postar em breve. Se você está procurando por uma S K I N específica minha que ainda não está disponível, fique tranquilo, é só me chamar no D I S C O R D e eu farei questão de postar os modelos que você deseja. OBS: São todos modelos que eu fiz! E não para por aí, pessoal! Se você está em busca de algo realmente exclusivo para o seu servidor, estou aqui para ajudar. Aceito encomendas de modelos personalizados, feitos especialmente para atender às necessidades do seu servidor. Tenho certeza de que isso pode ser um grande diferencial para tornar o seu servidor ainda mais atrativo! Vocês nem imaginam quantos modelos incríveis ainda tenho para postar, mas calma, estou trabalhando para compartilhá-los com vocês nos próximos dias. Então fiquem ligados e não percam as atualizações! Acessem meu site, confiram as S K I N S já disponíveis e entrem em contato comigo pelo D I S C O R D ou Z A P para pedidos especiais! Grande abraço! Acessem o meu site : [Conteúdo Oculto] Fazendo o que ninguem mais sabe fazer 2020-02-16 14-06-35.mp4 Fazendo o que ninguem mais sabe fazer 2020-05-17 13-03-34.mp4 Perfect World 2019-09-16 16-07-46.mp4 Perfect World 2019-11-01 15-12-14.mp4 susanoo.mp41 ponto
-
AUIEditor2.1 Como usar: Locale Emulator: Abra o programa "Locale Emulator" executando o arquivo chamado LEGUI.exe. Altere a localização para Chinês Simplificado. Não se esqueça de salvar as configurações depois de fazer a mudança. Utilize um extractor de PCK para extrair os arquivos do tipo "interface.pck , surface.pck ,config.pck , Coloque os arquivos extraídos nas pastas correspondentes. "configs.pck".= "configs" . Agora, abra o AUIEditor2. Basta clicar com o botão direito do mouse no arquivo executável e selecionar a opção Locale Emulator selecionar a opção para abrir. O meu Chinês Simplificado. esta em (wwww) Animações GFX (Opcional gfx.pck , shaders.pck" para carregar as animações . Coloque os arquivos extraídos nas pastas correspondentes. "gfx.pck".= "gfx". Locale.Emulator.zipAUIEditor (interfaces).rar configs.rar Atalho para AUIEditor2 bat para AUIEditor2+Locale.Emulator .cmd >>1.00<< 2024-03-23 23-01-52.mp41 ponto
-
Tchow! Há alguns anos um grande amigo meu desenvolveu este LiveRank para um servidor que eu tive no passado e agora estou disponibilizando para vocês. Como instalar em seu servidor 1 – Coloque a pasta inteira dentro da sua PWServer ou home 2 – Forneça permissão aos arquivos pode ser 0755 ou 0777 3 – Abra o arquivo “config.php” e inserir apenas a sua senha MYSQL. 4 – Importe o arquivo fRank.sql no banco de dados do seu servidor, normalmente o banco se chama “pw” 5 – Pelo Putty vá até a pasta do LiveRank e execute o comando ./start.sh PS: Abrindo o arquivo “config.php” você pode configurar o canal que a mensagem vai ser anunciada dentro do jogo. Você também pode personalizar a mensagem que aparece dentro do jogo quando um jogador mata o outro o nome do arquivo para alterar a mensagem se chama “mensagens.php” você também pode usar mais que 1 mensagem Caso você por algum motivo reinicie seu VPS lembre-se de sempre startar o LiveRank para funcionar normalmente.. O Rank além de anunciar quem matou e quem morreu também mostra a quantidade de Abates e Mortes. Crédito pelo arquivo: Frankstem liverank.rar1 ponto
-
1 ponto
-
Base Firewall usado no D-Proxy Sistema Operacional: Alma Linux 8 Módulos Ativos + Proteção contra ataques SYN Flood + Proteção contra ataques UDP Flood + Gerenciamento automático de bloqueios + Filtragem baseada em portas + Registro de logs + Execução automática de regras de firewall + Módulos como Fail2Ban, slowloris ou iptables com rate limiting podem ser implementados opcionalmente. como copilar? sudo dnf install -y gcc-c++ libpcap-devel firewalld g++ -o firewall_monitor firewall_monitor.cpp -lpcap -lpthread para deixar rodando 24 Hrs sudo dnf install -y screen screen -S firewall_monitor sudo ./firewall_monitor Ctrl + A, depois solte e aperte D config.txt ports=29000,3306,80,39000,22 firewall_monitor.cpp #include <iostream> #include <pcap.h> #include <unordered_map> #include <ctime> #include <cstring> #include <fstream> #include <sstream> #include <chrono> #include <thread> #include <vector> #include <algorithm> #include <cstdint> #include <arpa/inet.h> #include <netinet/ip.h> #include <netinet/tcp.h> #include <netinet/udp.h> #include <netinet/ip_icmp.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> // Ayarlar const std::string device = "eth0"; // Ağ arayüzü const int max_conn_per_sec = 200; // Saniye başına bağlantı limiti const int block_time = 86400; // Engelleme süresi (saniye cinsinden) (24 saat) const std::string log_file = "logs.txt"; // Günlük dosyası const std::string config_file = "config.txt"; // Yapılandırma dosyası // Bağlantı sayım yapıları struct ConnInfo { int count; std::time_t last_seen; }; std::unordered_map<std::string, ConnInfo> conn_count; // IP başına bağlantı sayacı std::unordered_map<std::string, ConnInfo> syn_count; // IP başına SYN sayacı std::unordered_map<std::string, ConnInfo> udp_count; // IP başına UDP sayacı std::unordered_map<std::string, std::time_t> blocked_ips; // Engellenen IP'ler ve süresi std::vector<uint16_t> ports; // Korumaya alınacak bağlantı noktaları (yapılandırma dosyasından yüklenir) // Günlük kaydı işlevi void log_message(const std::string& message) { std::ofstream log_stream(log_file, std::ios::app); if (log_stream.is_open()) { auto now = std::chrono::system_clock::now(); std::time_t now_time = std::chrono::system_clock::to_time_t(now); log_stream << "[" << std::ctime(&now_time) << "] " << message << std::endl; } } // IP engelleme işlevi void block_ip(const std::string& ip) { std::string command = "sudo firewall-cmd --permanent --add-rich-rule='rule family=\"ipv4\" source address=\"" + ip + "\" reject'"; system(command.c_str()); system("sudo firewall-cmd --reload"); blocked_ips[ip] = std::time(nullptr) + block_time; // Engelleme süresi belirlenir log_message("IP " + ip + " 24 saat boyunca engellendi."); } // Süresi dolmuş IP engellerini kaldıran işlev void unblock_expired_ips() { auto now = std::time(nullptr); for (auto it = blocked_ips.begin(); it != blocked_ips.end(); ) { if (now >= it->second) { std::string command = "sudo firewall-cmd --permanent --remove-rich-rule='rule family=\"ipv4\" source address=\"" + it->first + "\" reject'"; system(command.c_str()); system("sudo firewall-cmd --reload"); log_message("IP " + it->first + " engeli kaldırıldı."); it = blocked_ips.erase(it); } else { ++it; } } } // Paket işleme işlevi void process_packet(u_char* user, const struct pcap_pkthdr* pkthdr, const u_char* packet) { struct ip* ip_header = (struct ip*)(packet + 14); // Ethernet başlığını (14 bayt) atlar struct tcphdr* tcp_header = (struct tcphdr*)(packet + 14 + (ip_header->ip_hl << 2)); struct udphdr* udp_header = (struct udphdr*)(packet + 14 + (ip_header->ip_hl << 2)); struct icmp* icmp_header = (struct icmp*)(packet + 14 + (ip_header->ip_hl << 2)); char src_ip[INET_ADDRSTRLEN]; inet_ntop(AF_INET, &(ip_header->ip_src), src_ip, INET_ADDRSTRLEN); uint16_t dst_port = 0; if (ip_header->ip_p == IPPROTO_TCP) { dst_port = ntohs(tcp_header->th_dport); } else if (ip_header->ip_p == IPPROTO_UDP) { dst_port = ntohs(udp_header->uh_dport); } // IP engellenmiş mi kontrol et if (blocked_ips.find(src_ip) != blocked_ips.end()) { return; // Engellenmiş IP'den gelen paketleri yok say } // Bağlantı noktası koruma listesinde mi kontrol et if (std::find(ports.begin(), ports.end(), dst_port) != ports.end()) { auto now = std::time(nullptr); // Eski bağlantıları temizle for (auto it = conn_count.begin(); it != conn_count.end(); ) { if (now - it->second.last_seen > 1) { it = conn_count.erase(it); } else { ++it; } } // SYN paketlerini say ve limit aşılırsa IP'yi engelle if (ip_header->ip_p == IPPROTO_TCP && (tcp_header->th_flags & TH_SYN)) { syn_count[src_ip].count++; syn_count[src_ip].last_seen = now; if (syn_count[src_ip].count > max_conn_per_sec) { block_ip(src_ip); syn_count.erase(src_ip); return; } } // UDP paketlerini say ve limit aşılırsa IP'yi engelle if (ip_header->ip_p == IPPROTO_UDP) { udp_count[src_ip].count++; udp_count[src_ip].last_seen = now; if (udp_count[src_ip].count > max_conn_per_sec) { block_ip(src_ip); udp_count.erase(src_ip); return; } } } } int main() { // Başlatma mesajı std::cout << "Anti-DDoS başlatılıyor..." << std::endl; log_message("Anti-DDoS başarıyla başlatıldı."); char errbuf[PCAP_ERRBUF_SIZE]; pcap_t* handle = pcap_open_live(device.c_str(), BUFSIZ, 1, 1000, errbuf); if (handle == nullptr) { std::cerr << "Aygıt açılırken hata: " << errbuf << std::endl; log_message("Aygıt açılırken hata: " + std::string(errbuf)); return 1; } // Ana döngü while (true) { pcap_loop(handle, -1, process_packet, nullptr); unblock_expired_ips(); // Süresi dolmuş IP engellerini kaldır std::this_thread::sleep_for(std::chrono::seconds(1)); } pcap_close(handle); return 0; }1 ponto
-
Estou disponibilizando gratuitamente a versão BETA do meu projeto em andamento! Com ele, você pode mascarar a identidade do seu servidor e trazer sua VPS ou Dedicado de qualquer lugar do mundo para o Brasil. Estou liberando +1000 Portas e 1 IP para testes Acessar Website Em breve, operaremos com mais de 20 IPs em São Paulo! IMPORTANTE: permitir apenas que o IP do nosso serviço acesse a porta escolhida em nosso site! iptables -A INPUT -p tcp --dport SUA_PORTA -s 191.252.5.3 -j ACCEPT iptables -A INPUT -p udp --dport SUA_PORTA -s 191.252.5.3 -j ACCEPT iptables -A INPUT -p tcp --dport SUA_PORTA -j DROP iptables -A INPUT -p udp --dport SUA_PORTA -j DROP iptables-save > /etc/sysconfig/iptables1 ponto
-
Bom uso a todos! Version: Python 3.13 Install: python3 -m pip install scapy #Notes Update Rate Limiting 03-01-25 Traffic Anomaly Detection 03-01-25 Packet Filtering 03-01-25 Add SSH monitoring 28-12-24 Config.txt # Configurações gerais de monitoramento e proteção # Defina as portas para monitoramento (exemplo: HTTP, SSH) PORTS_TO_MONITOR=80,7777,2106 # Se o bloqueio por HWID deve ser ativado BLOCK_HWID=true # Limites de pacotes MAX_PACKET_SIZE=1024 MAX_CONNECTIONS=100 CONNECTION_TIME_WINDOW=10 # Em segundos # Limitações de pacotes TCP e UDP MAX_TCP_PACKETS=500 MAX_UDP_PACKETS=300 # Configurações para proteção SSH SSH_PORT=22 SSH_BLOCK_THRESHOLD=5 # Número de tentativas antes de bloquear SSH_BLOCK_DURATION=3600 # Duração do bloqueio (em segundos) SSH_LOCKDOWN_THRESHOLD=10 # Número de tentativas excessivas antes de lockdown SSH_LOCKDOWN_DURATION=86400 # Duração do lockdown (1 dia) SSH_IP_ATTEMPTS_WINDOW=60 # Janela de tempo (em segundos) para tentativas de login SSH # Limitação de taxa de pacotes para evitar DDoS RATE_LIMIT_THRESHOLD=1000 # Limite de pacotes por IP DDoS_DETECTION_WINDOW=10 # Janela de tempo para detectar DDoS DDoS_CONNECTION_THRESHOLD=500 # Limite de conexões simultâneas que aciona a detecção de DDoS main.py import os import time import hashlib import uuid import platform import json import re from scapy.all import sniff, TCP, UDP, IP from collections import defaultdict from threading import Thread # Словари для хранения данных трафика и блокировок traffic_data = defaultdict(lambda: {"timestamps": [], "tcp_count": 0, "udp_count": 0, "packet_count": 0}) blocked_hwids = set() # Множество заблокированных HWID blocked_ips = defaultdict(lambda: {"block_time": None, "attempts": 0, "block_duration": 0}) # Блокировка IP # Стандартные настройки config = { "MAX_PACKET_SIZE": 1024, "MAX_CONNECTIONS": 100, "CONNECTION_TIME_WINDOW": 10, "PORTS_TO_MONITOR": [80, 7777, 2106], "MAX_TCP_PACKETS": 500, "MAX_UDP_PACKETS": 300, "BLOCK_HWID": True, "SSH_PORT": 22, "SSH_BLOCK_THRESHOLD": 5, # Порог для неудачных попыток входа SSH "SSH_BLOCK_DURATION": 3600, # Длительность блокировки SSH "SSH_LOCKDOWN_THRESHOLD": 10, # Количество чрезмерных попыток перед блокировкой "SSH_LOCKDOWN_DURATION": 86400, # Длительность блокировки (1 день) "SSH_IP_ATTEMPTS_WINDOW": 60, # Временное окно для попыток входа SSH "RATE_LIMIT_THRESHOLD": 1000, # Порог пакетов на IP "DDoS_DETECTION_WINDOW": 10, # Временное окно для обнаружения DDoS "DDoS_CONNECTION_THRESHOLD": 500 # Порог одновременных подключений } LOG_FILE = "logs.json" # Функция для загрузки конфигурации из файла def load_config(): global config if not os.path.exists("config.txt"): print("[INFO] Файл config.txt не найден. Используются настройки по умолчанию.") return with open("config.txt", "r") as file: for line in file: line = line.strip() if not line or line.startswith("#"): continue key, value = line.split("=") key = key.strip() value = value.split("#")[0].strip() if key in ["PORTS_TO_MONITOR"]: config[key] = list(map(int, value.split(","))) elif key in ["BLOCK_HWID"]: config[key] = value.lower() == "true" elif key in ["SSH_PORT", "SSH_BLOCK_THRESHOLD", "SSH_BLOCK_DURATION", "MAX_PACKET_SIZE", "MAX_CONNECTIONS", "CONNECTION_TIME_WINDOW", "MAX_TCP_PACKETS", "MAX_UDP_PACKETS", "RATE_LIMIT_THRESHOLD", "DDoS_DETECTION_WINDOW", "DDoS_CONNECTION_THRESHOLD", "SSH_LOCKDOWN_THRESHOLD", "SSH_LOCKDOWN_DURATION", "SSH_IP_ATTEMPTS_WINDOW"]: config[key] = int(value) else: config[key] = value # Функция для записи статистики def log_statistics(ip, hwid, reason, data): log_entry = { "timestamp": time.strftime("%Y-%m-%d %H:%M:%S"), "ip": ip, "hwid": hwid, "reason": reason, "tcp_count": data["tcp_count"], "udp_count": data["udp_count"] } try: with open(LOG_FILE, "r+") as f: logs = json.load(f) logs.append(log_entry) f.seek(0) json.dump(logs, f, indent=4) except Exception as e: print(f"[ERROR] Ошибка при сохранении в лог: {e}") # Функция для генерации уникального HWID def get_hwid(): mac_address = get_mac_address() system_uuid = get_system_uuid() unique_string = f"{mac_address}-{system_uuid}-{platform.system()}" return hashlib.sha256(unique_string.encode()).hexdigest() # Функция для получения MAC-адреса def get_mac_address(): try: mac = uuid.getnode() mac_address = ':'.join(("%012X" % mac)[i:i + 2] for i in range(0, 12, 2)) return mac_address except Exception: return "UNKNOWN_MAC" # Функция для получения UUID системы def get_system_uuid(): try: if platform.system() == "Linux": with open('/sys/class/dmi/id/product_uuid', 'r') as f: return f.read().strip() elif platform.system() == "Windows": import subprocess result = subprocess.check_output('wmic csproduct get uuid', shell=True).decode() return result.split('\n')[1].strip() return platform.node() except Exception: return "UNKNOWN_UUID" # Функция для мониторинга пакетов def monitor_packet(packet): if packet.haslayer(IP): src_ip = packet[IP].src current_time = time.time() hwid = get_hwid() # Инициализация данных трафика data = traffic_data[src_ip] if current_time not in data["timestamps"]: data["timestamps"].append(current_time) # Удаление меток времени, выходящих за пределы окна data["timestamps"] = [ ts for ts in data["timestamps"] if current_time - ts <= config["CONNECTION_TIME_WINDOW"] ] # Ограничение скорости: подсчет пакетов, полученных от IP data["packet_count"] += 1 # Обнаружение DDoS: ограничение пакетов на IP за определенный период времени if data["packet_count"] > config["RATE_LIMIT_THRESHOLD"]: print(f"[ALERT] IP {src_ip} отправляет слишком много пакетов. Возможная атака DDoS!") blocked_hwids.add(hwid) log_statistics(src_ip, hwid, "Превышен лимит пакетов", data) # Блокировка по TCP/UDP пакетам if packet.haslayer(TCP): data["tcp_count"] += 1 elif packet.haslayer(UDP): data["udp_count"] += 1 if data["tcp_count"] > config["MAX_TCP_PACKETS"]: blocked_hwids.add(hwid) log_statistics(src_ip, hwid, "Избыточное количество TCP пакетов", data) print(f"[ALERT] Избыточное количество TCP пакетов: {src_ip}") elif data["udp_count"] > config["MAX_UDP_PACKETS"]: blocked_hwids.add(hwid) log_statistics(src_ip, hwid, "Избыточное количество UDP пакетов", data) print(f"[ALERT] Избыточное количество UDP пакетов: {src_ip}") elif len(data["timestamps"]) > config["MAX_CONNECTIONS"]: blocked_hwids.add(hwid) log_statistics(src_ip, hwid, "Избыточное количество соединений", data) print(f"[ALERT] Избыточное количество соединений: {src_ip}") # Функция для мониторинга трафика SSH def monitor_ssh_traffic(): print("[INFO] Мониторинг трафика SSH...") try: sniff(filter=f"tcp port {config['SSH_PORT']}", prn=process_ssh_packet, store=False) except KeyboardInterrupt: print("[INFO] Мониторинг SSH прерван.") except Exception as e: print(f"[ERROR] Ошибка мониторинга SSH: {e}") # Функция для обработки пакетов SSH def process_ssh_packet(packet): if packet.haslayer(IP) and packet.haslayer(TCP): src_ip = packet[IP].src handle_ssh_attempt(src_ip) # Функция для обработки попыток входа SSH def handle_ssh_attempt(ip): current_time = time.time() data = blocked_ips[ip] # Если IP был заблокирован на более длительный период if data["block_time"] and current_time - data["block_time"] < data["block_duration"]: return # Увеличиваем счетчик попыток входа SSH data["attempts"] += 1 if data["attempts"] > config["SSH_BLOCK_THRESHOLD"]: block_ip(ip) data["block_time"] = current_time data["block_duration"] = config["SSH_BLOCK_DURATION"] # Длительность блокировки if data["attempts"] > config["SSH_LOCKDOWN_THRESHOLD"]: lockdown_ip(ip) data["block_time"] = current_time data["block_duration"] = config["SSH_LOCKDOWN_DURATION"] # Длительность блокировки # Функция для блокировки IP def block_ip(ip): print(f"[INFO] IP {ip} заблокирован за слишком много попыток входа SSH.") # Функция для применения блокировки для IP def lockdown_ip(ip): print(f"[INFO] IP {ip} попал в блокировку за слишком много попыток входа SSH.") # Функция для разблокировки IP после истечения срока блокировки def unblock_expired_ips(): current_time = time.time() for ip in list(blocked_ips.keys()): if current_time - blocked_ips[ip]["block_time"] > config["SSH_BLOCK_DURATION"]: print(f"[INFO] IP {ip} разблокирован.") del blocked_ips[ip] # Функция для начала мониторинга def start_monitoring(): print(f"[INFO] Мониторинг портов: {config['PORTS_TO_MONITOR']}") try: ports_filter = " or ".join([f"tcp port {port} or udp port {port}" for port in config["PORTS_TO_MONITOR"]]) sniff(filter=ports_filter, prn=monitor_packet, store=False) except KeyboardInterrupt: print("[INFO] Мониторинг прерван.") except Exception as e: print(f"[ERROR] Ошибка мониторинга: {e}") if __name__ == "__main__": load_config() # Запуск мониторинга SSH в отдельном потоке ssh_thread = Thread(target=monitor_ssh_traffic, daemon=True) ssh_thread.start() start_monitoring()1 ponto
-
1 ponto
-
Tenho este script de resgate. Não lembro quem me mandou, talvez sirva para algo. resgate.tgz1 ponto
-
1 ponto
-
Olá, venho hoje compartilhar este sistema de logs para seu pw. O sistema grava log de: Login Criação de personagem Forjas Refinos Negociações Venda de Lojinhas Leilão Lances Correios Compras do gshop (normal e evento) Presentes Vendas de itens em NPC Bate Papo Itens presos Drop de moedas e itens Coleta de moedas/itens do chão – entre players Coleta de moedas/itens do chão – drop de monstros entre outros. Obs: Depedendo da versão do seu pw alguns logs podem não funciona, mas pode adpatar/configurar pra sua versão direto nos arquivos Não fiz o Logservice, apenas o sistema de visualização na web. Em breve, com a ajuda do @Master vou criar um mais aprimorado, para todas as versões e com algumas novidades. Download: logservice.zip1 ponto
-
1 ponto
-
1 ponto
-
eu não tenho instalador dessa versão, os instaladores são mais dificieis cliente aberto = Perfect World 1.4.5 BR - Google Drive1 ponto
-
Google Drive ta bugando todos os arquivos por causa do tamanho do pacote, um link zip seria top em xD1 ponto
-
1 ponto
-
@GabrielGG vou deixa o link abaixo da interfaces , surfaces com as parada no inventario e o botão na lojinha offline [Conteúdo Oculto] Qualquer coisa só chama no Discord: Notoryu#86591 ponto
-
aaa entendi obrigado, e você sabe me dizer o nome da função que eu coloco no botão que vou criar na interface?1 ponto
-
@GabrielGG só adicionar esse arquivo abaixo no elements.data e deixar ele o item no inventario Dados de Material da Tarefa, Item 65532.aeitems1 ponto
-
0 pontos
-
Olá pessoal! Estou disponibilizando o PWAdmin 4.5 em sua versão original e sem modificações. Recebi informações de que alguém estava distribuindo o PWAdmin 4.5 com um trojan, então decidi compartilhar a versão limpa aqui. Por favor, tenham cuidado ao baixar qualquer software pela internet. Fiquem atentos à procedência dos arquivos que vocês baixam. Segurança em primeiro lugar! pwAdmin-cliente.7z pwadmin-servidor.7z0 pontos
-
Editor de Aipolicy criado pelo Kn1fe e Atualizado para 1.7.6 por mim ele lê e salva aipolicy 172 174 176 source:[Conteúdo Oculto] compilado: AiPolicy Editor 176v40 - Updated by Haly - Release.rar0 pontos
-
0 pontos
-
pw-web originalmente feito por tomirons/hulu que foi lançado no ragezone, está abandonado no momento. alguns meses atrás, ele encontrou um erro no qual você não pode instalá-lo devido à indisponibilidade de um pacote, então decidi corrigi-lo para torná-lo utilizável novamente. As instruções sobre como instalar o painel estão no github. [Conteúdo Oculto] pw-web-master.zip0 pontos