API do Filtro de Spam
O Filtro de Spam da ALTCHA é um recurso exclusivo de detecção de spam que permite que você classifique textos e outras informações, permitindo que você filtre spam e identifique mensagens legítimas. Funciona analisando informações textuais e outras, avaliando vários fatores para fornecer uma pontuação numérica indicando se a mensagem parece legítima ou é provavelmente spam.
O Filtro de Spam utiliza processamento de linguagem natural e aprendizado de máquina para analisar dados de forma rápida e confiável. Para resultados ótimos, recomenda-se usar idiomas com suporte completo. Embora outros idiomas também possam ser analisados, alguns fatores de pontuação podem não estar disponíveis.
A privacidade e a conformidade com o GDPR são primordiais para todos os serviços da ALTCHA. O Filtro de Spam respeita a privacidade do usuário e garante a conformidade com o GDPR para proteger tanto você quanto seus clientes. Saiba mais sobre considerações de privacidade.
Casos de Uso
- Detecção abrangente de spam: Detecte rapidamente e de forma confiável o spam enviado por meio de formulários online ou APIs, analisando texto e validando fatores como endereços de e-mail e endereços IP.
- Validação de endereço de e-mail: Detecte endereços de e-mail falsos ou suspeitos e distinga entre e-mails “gratuitos” e “corporativos”.
- Validação de endereço IP: Identifique se um endereço IP está associado a um data center, proxy ou saída do TOR, e verifique contra listas de bloqueio para atividades maliciosas.
- Firewall de segurança: Proteja-se contra tentativas comuns de injeção de HTML e SQL em texto, além de identificar atacantes conhecidos por meio de extensas listas de bloqueio.
- Detecção de idioma: Detecte automaticamente até 160 idiomas a partir do texto fornecido.
- Geo-localização: Detecte de forma confiável a geo-localização do usuário, idiomas comumente falados, moeda e outras informações a partir de endereços IP ou fusos horários do usuário.
- Geo-cercamento: Bloqueie efetivamente certos países, regiões ou continentes de acessar ou usar seu site ou APIs.
Experimente!
Teste a API do Filtro de Spam com sua própria entrada usando o formulário abaixo.
Teste o Filtro de Spam por si mesmo enviando o formulário com sua própria entrada.
- Use diferentes idiomas
- Inclua palavras obscenas ou comuns de spam
- Use um endereço de e-mail real e um com aparência suspeita
- Explore qualquer uma das regras de texto
- Classificação
- Levou
- Motivos
- Idioma detectado
- Endereço IP
- Localização (IP)
- Localização (fuso horário)
Autorização
O acesso à API requer uma Chave de API. Consulte a documentação de autorização da API para obter mais informações.
Uso com o Widget
Se estiver usando o widget da ALTCHA como proteção Captcha, integrar o Filtro de Spam diretamente em seu site é simples. O formulário será classificado durante a verificação da ALTCHA, antes que os dados cheguem ao seu servidor.
Para utilizar o Filtro de Spam, adicione o atributo spamfilter
ao widget (versão 0.3+
necessária):
Para informações adicionais e alterações necessárias no servidor, consulte a documentação.
Modos de Operação
O Filtro de Spam oferece várias funcionalidades avançadas para a detecção de spam. Dependendo do seu caso de uso e do público-alvo, algumas funcionalidades, como a classificação de campos de texto, podem ser invasivas para a privacidade. Felizmente, você pode configurar facilmente o comportamento do Filtro de Spam e definir o modo de verificação.
Modo Padrão
No modo padrão, o Filtro de Spam realiza:
- Classificação de texto em todos os campos de texto do formulário
- Verificação do endereço de e-mail
- Verificação de IP
- Verificação de idioma
Modo de Endereço IP
Defina spamfilter="ipAddress"
para verificar apenas o endereço IP e o fuso horário do usuário. Este modo não envia campos de texto nem endereços de e-mail, tornando-o uma opção mais amigável à privacidade que evita o envio de informações pessoais identificáveis.
Embora o Modo de Endereço IP não possa detectar spam gerado por humanos, ele identifica efetivamente bots por meio de uma verificação abrangente de endereços IP.
Modos Personalizados
Você pode personalizar ainda mais o comportamento do Filtro de Spam usando configuração programática. Forneça spamfilter
como um objeto com configurações individuais adaptadas às suas necessidades.
Classificação de Texto
A API do Filtro de Spam analisa o texto fornecido, buscando padrões comuns vistos em spam. Ele pontua vários fatores e fornece uma pontuação cumulativa indicando a qualidade do texto.
Ele pode fornecer insights valiosos sobre o texto:
- Detecção de idioma
- Avaliação geral de sentimentos
- Identificação de palavras de spam e palavrões
- Detecção de URLs
- Detecção de injeções de HTML e JavaScript prejudiciais
- Identificação de possíveis injeções de SQL
Consulte as regras de texto para mais detalhes.
Suporte a Idiomas
O Filtro de Spam atualmente suporta a classificação de texto nos idiomas listados abaixo. Para textos em idiomas não incluídos nesta lista, será utilizado o classificador padrão em inglês. Isso oferece uma funcionalidade básica para a detecção de spam, mesmo para idiomas não suportados.
- Búlgaro
- Checo
- Dinamarquês
- Holandês
- Inglês
- Finlandês
- Francês
- Alemão
- Grego
- Húngaro
- Italiano
- Norueguês
- Polonês
- Português
- Romeno
- Russo
- Eslovaco
- Espanhol
- Sueco
Verificação de E-mail
A API pode verificar endereços de e-mail, verificando sua legitimidade. Uma pontuação mais alta indica um endereço de e-mail suspeito ou falso.
- Verificação de registro DNS
- Detecção de provedores de e-mail gratuitos
- Verificação de listas de bloqueio para spammers conhecidos
Consulte as regras de e-mail para mais detalhes.
Verificação de Endereço IP
Verificar os endereços IP dos usuários é crucial para detectar abusos. A API identifica proxies, saídas do TOR, data centers e endereços IP maliciosos conhecidos.
- Detecção de geo-localização
- Geo-cercamento
- Identificação de data centers, proxies, VPNs e saídas do TOR
- Verificação de listas de bloqueio para atores maliciosos conhecidos
Consulte as regras de endereço IP para mais detalhes.
Verificação de Fuso Horário
A detecção do fuso horário do usuário via o navegador fornece informações confiáveis de geo-localização. A API resolve fuso horários para países específicos.
- Detecção de geo-localização
- Geo-cercamento
Consulte as regras de fuso horário para mais detalhes.
É possível recuperar o fuso horário do IANA do usuário usando o seguinte código JavaScript:
Ponto de Extremidade da API
Para classificar seus dados, utilize o ponto de extremidade /api/v1/classify
:
Solicitação
Para usar a API, envie um corpo codificado em JSON no seguinte formato:
Todas as propriedades da solicitação são opcionais:
blockedCountries
- Uma matriz de códigos de país (ISO 3166 alfa-2) que você quer bloquear.classifier
- Forçar um classificador específico. Classificadores suportados:cs
,en
,de
,es
,fr
,it
,nl
,pt
.disableRules
- Uma matriz de regras a desativar. Por exemplo,["text.EMOJI"]
.email
- Um endereço de email para verificar. Para respeitar a privacidade do usuário, envie apenas@<dominio>
.expectedCountries
- Uma matriz de códigos de país (ISO 3166 alfa-2) de onde você espera que o usuário seja.expectedLanguages
- Uma matriz de códigos de idioma (ISO 639 alfa-2) nos quais você espera que o texto esteja escrito.fields
- Envie campos de texto como um objeto chave-valor. Pode ser usado em vez detext
(a propriedadetext
tem precedência).ipAddress
- O endereço IP do usuário. Useauto
para usar o IP do chamador. Tanto IPv4 quanto IPv6 são suportados.text
- O texto a classificar. Uma matriz de strings também pode ser enviada.timeZone
- Fuso horário do usuário no formato IANA, fornecido pelo navegador.
Resposta
A API responde com uma classificação codificada em JSON de seus dados:
O resultado é determinado por propriedades na resposta:
classification
- Pode serGOOD
(< 1),NEUTRAL
(1…2), ouBAD
(> 2), indicando pontuação geral.score
- A pontuação numérica geral. Uma pontuação > 2 indica spam.reasons
- Uma série de regras correspondentes, classificadas por pontuação.
Regras de Pontuação
A API de classificação avalia várias regras de pontuação para cada atributo fornecido. As regras individuais e suas pontuações são retornadas pela API na resposta. A pontuação geral resultante é a soma de todas as pontuações das regras.
Existem 4 categorias distintas de regras de pontuação, com base na entrada fornecida:
Regras de Texto
O texto é analisado com as seguintes regras usando processamento de linguagem natural e aprendizado de máquina. Essas regras são projetadas para detectar padrões comuns usados em mensagens não solicitadas, como spam e promoção, mas também detectar palavrões e conteúdo prejudicial.
CAPITALIZATION
Esta regra encontra palavras EM MAIÚSCULAS no texto. A utilização de maiúsculas sugere uma mensagem não solicitada.
- Significância:
baixa
- Pontuação:
n × 0.25
onden
é o número de ocorrências.
CURRENCY
Esta regra encontra todos os tokens que correspondem a formatos de preço ou moeda comuns. Preços no texto indicam uma oferta comercial.
- Significância:
baixa
- Pontuação:
n × 0.25
onden
é o número de ocorrências.
EMOJI
Esta regra encontra todos os caracteres de emoji. O uso excessivo de emojis é considerado prejudicial.
- Significância:
baixa
- Pontuação:
n × 0.25
onden
é o número de ocorrências.
EXCLAMATION
Esta regra encontra todos os caracteres de exclamação. O uso excessivo de exclamações é considerado prejudicial.
- Significância:
baixa
- Pontuação:
n × 0.25
onden
é o número de ocorrências.
HASH_TAGS
Esta regra encontra todas as #hashtags. O uso excessivo de hashtags é considerado prejudicial.
- Significância:
baixa
- Pontuação:
n × 0.25
onden
é o número de ocorrências.
HTML
Esta regra encontra todas as tags HTML. O uso de HTML é considerado prejudicial.
- Significância:
média
- Pontuação:
n × 1
onden
é o número de ocorrências.
HTML_INJECTION
Esta regra encontra todas as tags HTML prejudiciais, como <script>
, <style>
e <iframe>
, que indicam uma tentativa maliciosa.
- Significância:
alta
- Pontuação:
n × 5
onden
é o número de ocorrências.
NUMBERS_ONLY
Esta regra corresponde se todo o texto consistir apenas em números e indicações de teclas aleatórias.
- Significância:
média
- Pontuação:
0 | 2
PROFANITY
Esta regra encontra palavrões comumente usados no texto.
- Significância:
alta
- Pontuação:
n × x
onden
é o número de ocorrências ex
é uma pontuação de palavra variável.
RANDOM_CHARS
Esta regra encontra sequências de caracteres que parecem se ajustar a teclas aleatórias.
- Significância:
média
- Pontuação:
n × 1
onden
é o número de ocorrências.
SENTIMENT
Esta regra avalia o sentimento geral do texto. Sentimento ruim ou prejudicial aumenta a pontuação.
- Significância:
média
- Pontuação:
0 | 1
SHORT_TEXT
Esta regra corresponde se o texto for muito curto, abaixo de 40 caracteres.
- Significância:
média
- Pontuação:
0 | 1
SPAM_WORDS
Esta regra encontra palavras de spam comumente usadas no texto.
- Significância:
média
- Pontuação:
n × x
onden
é o número de ocorrências ex
é uma pontuação de palavra variável.
SPECIAL_CHARS
Esta regra encontra sequências não alfanuméricas com mais de 5 caracteres.
- Significância:
média
- Pontuação:
n × 1
onden
é o número de ocorrências.
SQL_INJECTION
Esta regra encontra possíveis tentativas de injeção de SQL, como 1; drop table ...
.
- Significância:
alta
- Pontuação:
n × 5
onden
é o número de ocorrências.
UNEXPECTED_LANGUAGE
Esta regra corresponde se o idioma detectado não corresponder a expectedLanguages
.
- Significância:
alta
- Pontuação:
0 | 5
UNKNOWN_LANGUAGE
Esta regra corresponde se o idioma não puder ser detectado no texto.
- Significância:
média
- Pontuação:
0 | 1
URL
Esta regra encontra endereços de URL no texto. O uso excessivo de URLs é considerado prejudicial.
- Significância:
baixa
- Pontuação:
n × 0.5
onden
é o número de ocorrências.
Regras de E-mail
Se você fornecer um endereço de email
para a API do classificador, ele será analisado com as seguintes regras projetadas para validar o endereço. Ele pode dizer se o email é um “email gratuito”, como Gmail, ou se ele realmente pode receber mensagens.
FREE_PROVIDER
Esta regra corresponde se o nome de domínio do endereço de email for reconhecido como um provedor de email gratuito conhecido, como o Gmail. Uma pontuação de 0
indica um email “profissional” com um nome de domínio personalizado, e uma pontuação de 0.5
indica um provedor de email gratuito de uma lista dos provedores mais populares e “confiáveis”.
- Significância:
baixa
- Pontuação:
0 | 0.5 | 1
DMARC
Esta regra verifica o DNS para um registro _dmarc.
e corresponde se o registro não estiver configurado. A ausência de um registro DMARC
indica que o domínio está mal configurado.
- Significância:
baixa
- Pontuação:
0 | 0.5
MX
Esta regra verifica o DNS para um registro MX
e corresponde se o registro não estiver configurado. A ausência de um registro MX
indica que o endereço de email não é válido porque o email não pode ser entregue.
- Significância:
alta
- Pontuação:
0 | 5
REPORTED
Esta regra corresponde se o end
ereço de email for encontrado em uma das listas de bloqueio de spammers conhecidos em fóruns.
- Significância:
alta
- Pontuação:
0 | 5
INVALID
Esta regra corresponde se o formato do endereço de email for inválido, como um nome de domínio inválido.
- Significância:
alta
- Pontuação:
0 | 5
Regras de Endereço IP
Se você fornecer um ipAddress
para a API do classificador, ele será analisado com as seguintes regras projetadas para avaliar o quão prejudicial é o usuário. Ele informará se o usuário está usando um servidor proxy ou TOR, se o endereço IP está localizado em um datacenter ou se é um endereço IP malicioso conhecido. Você pode usar a avaliação de IP para bloqueio geográfico.
BLOCKED_COUNTRY
Esta regra corresponde se a localização geográfica detectada corresponder a blockedCountries
.
- Significância:
alta
- Pontuação:
0 | 5
HOSTING
Esta regra corresponde se o endereço IP for conhecido por estar localizado em um datacenter.
- Significância:
média
- Pontuação:
0 | 2
MALICIOUS
Esta regra corresponde se o endereço IP for encontrado em uma das listas de bloqueio de atores maliciosos conhecidos.
- Significância:
alta
- Pontuação:
0 | 5
PROXY
Esta regra corresponde se o endereço IP for conhecido por ser um servidor proxy, como um VPN.
- Significância:
baixa
- Pontuação:
0 | 0.5
TOR
Esta regra corresponde se o endereço IP for conhecido por ser uma saída TOR.
- Significância:
média
- Pontuação:
0 | 1
UNEXPECTED_COUNTRY
Esta regra corresponde se a localização geográfica detectada não corresponder a expectedCountries
.
- Significância:
média
- Pontuação:
0 | 1
Regras de Fuso Horário
O fuso horário do usuário (fornecido pelo navegador) é avaliado para detectar uma localização geográfica precisa do usuário. Isso muitas vezes é mais preciso do que o endereço IP devido à imprecisão do conjunto de dados de IP e ao uso de proxies.
BLOCKED_COUNTRY
Esta regra corresponde se a localização geográfica detectada corresponder a blockedCountries
.
- Significância:
alta
- Pontuação:
0 | 5
UNEXPECTED_COUNTRY
Esta regra corresponde se a localização geográfica detectada não corresponder a expectedCountries
.
- Significância:
média
- Pontuação:
0 | 1