Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Problema de inserción automática

hola a todos, bueno como ya saben, mi web de mascotas, desde hace unos dias, se me añaden mascotas a traves de un tipo bot, cada pocos min se agrega alguna...
de este tipo

he metido una captcha en el formulario de agregar mascotas, pero aun asi se añaden....

alguna idea que mas puedo hacer?
Editado
0
Puntos
13
Resp
352
Visitas
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #1

hola tenes que ver en tu configuracion de httaccses
hay codigos de bloquear bots
y tambien usa ronots.txt
0
Puntos
Por pablo hace 10 meses
Experto offline

Respuesta #2

Vale. En httaccess tengo lo básico para url amigables.
Sábes por donde tirar ahí?
0
Puntos
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #3

en el .htaccses
<Limit GET POST PUT>
order allow,deny
allow from all
deny from 123.456.789
</LIMIT>
RewriteCond %{HTTP_USER_AGENT} ^(turingos|turnitinbot|urly.?warning|vacuum|vci|voideye|whacker) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^(wget|widow|wisenutbot|wwwoffle|xaldon|xenu|zeus|zyborg|anonymouse) [NC,OR]
# STARTS WITH WEB
RewriteCond %{HTTP_USER_AGENT} ^web(zip|emaile|enhancer|fetch|go.?is|auto|bandit|clip|copier|master|reaper|sauger|site.?quester|whack) [NC,OR]
# ANYWHERE IN UA — GREEDY REGEX
RewriteCond %{HTTP_USER_AGENT} ^.*(craftbot|TwengaBot|download|extract|stripper|sucker|ninja|clshttp|webspider|leacher|collector|grabber|webpictures|ia_archiver-web.archive.org).*$ [NC]
# ISSUE 403 / SERVE ERRORDOCUMENT
RewriteRule . – [F,L]
deny from 216.120.143.126

#
# robots.txt
#

User-agent: Orthogaffe
Disallow: /

User-agent: UbiCrawler
Disallow: /

User-agent: DOC
Disallow: /

User-agent: Zao
Disallow: /

User-agent: sitecheck.internetseer.com
Disallow: /

User-agent: Zealbot
Disallow: /

User-agent: MSIECrawler
Disallow: /

User-agent: SiteSnagger
Disallow: /

User-agent: WebStripper
Disallow: /

User-agent: WebCopier
Disallow: /

User-agent: Fetch
Disallow: /

User-agent: Offline Explorer
Disallow: /

User-agent: Teleport
Disallow: /

User-agent: TeleportPro
Disallow: /

User-agent: WebZIP
Disallow: /

User-agent: linko
Disallow: /

User-agent: HTTrack
Disallow: /

User-agent: Microsoft.URL.Control
Disallow: /

User-agent: Xenu
Disallow: /

User-agent: larbin
Disallow: /

User-agent: libwww
Disallow: /

User-agent: ZyBORG
Disallow: /

User-agent: Download Ninja
Disallow: /

User-agent: wget
Disallow: /

User-agent: grub-client
Disallow: /

User-agent: k2spider
Disallow: /

User-agent: NPBot
Disallow: /

User-agent: WebReaper
Disallow: /
1
Puntos
Por pablo hace 10 meses
Experto offline

Respuesta #4

Gracias Pablo! voy a probar y ya ire comentando a ver que tal :)
0
Puntos
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #5

nada, puesto en practica y nada, en 20 minutos 3 mascotas añadidas....

como comente, meti captcha pero aun asi... insertan... no se si utilizara directamente el insert o que... puede ser por ahi donde inserte?
0
Puntos
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #6

pego mi insert por si acaso se puede hacer algo por ahi
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  $insertSQL = sprintf("INSERT INTO animales (nombre, estado, raza, tamano, categoria, edad, sexo, salud, color, esterilizado, foto, foto2, foto3, foto4, foto5, descripcion, contacto, telefono, email, ciudad, envio) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       GetSQLValueString($_POST['nombre'], "text"),
                       GetSQLValueString($_POST['estado'], "text"),
                       GetSQLValueString($_POST['raza'], "text"),
                       GetSQLValueString($_POST['tamano'], "text"),
                       GetSQLValueString($_POST['categoria'], "text"),
                       GetSQLValueString($_POST['edad'], "text"),
                       GetSQLValueString($_POST['sexo'], "text"),
                       GetSQLValueString($_POST['salud'], "text"),
                       GetSQLValueString($_POST['color'], "text"),
                       GetSQLValueString($_POST['esterilizado'], "text"),
                       GetSQLValueString($_POST['foto'], "text"),
                       GetSQLValueString($_POST['foto2'], "text"),
                       GetSQLValueString($_POST['foto3'], "text"),
                       GetSQLValueString($_POST['foto4'], "text"),
                       GetSQLValueString($_POST['foto5'], "text"),
                       GetSQLValueString($_POST['descripcion'], "text"),
                       GetSQLValueString($_POST['contacto'], "text"),
                       GetSQLValueString($_POST['telefono'], "text"),
                       GetSQLValueString($_POST['email'], "text"),
                       GetSQLValueString($_POST['ciudad'], "text"),
                       GetSQLValueString($_POST['envio'], "text"));

  mysql_select_db($database_mundo, $mundo);
  $Result1 = mysql_query($insertSQL, $mundo) or die(mysql_error());

  $insertGoTo = "envio-realizado.php";
  if (isset($_SERVER['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $_SERVER['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));
}
?>
0
Puntos
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #7

MM
y trata de hecarlos de la web mediante httaccsess con el ip
fijate si tambien los usuarios no posten si no estan registrados.

0
Puntos
Por pablo hace 10 meses
Experto offline

Respuesta #8

No tengo aun hecho registro de usuarios...

Como puedo echarles?
0
Puntos
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #9

en en panel de administrator de tu host, existe una herramienta que esta revizando constantemente el trafico de tu sitio web, fijate que el analisis lance nombre de los bots que entran y salen de tu sitio, por lo general todos se quedan, si esta informacion no te aparece, ponte en contacto con el servicio al cliente de tu host, y ellos deberna orientarte un poco mas, al tener el nombre los bot, agregalos a tu archivo htaccess Y/O a tu robots.txt, si los nombres ya figuran en el o los documentos, entonces deberas verificar que el archivo robots.txt este en el lugar correcto, asi como reviza tanto el codigo de este archivo Y/O el de htaccess, esto para evitar que haya algun error que impida el buen funcionamiento...

tambien impleta seguridad en cuanto que usuarios pueden y no pueden subir post, comentar, etc... esto lo puedes hacer mediante el camino del rango, pero para esto deberas hacer el registro de usuarios, esto es una pieza clave, quizas no quieres que los usuarios se puedan registrar, entonces crea una tabla con usuarios y agregas tus datos, implementando el rango claro, pero es recomendable que hagas una pagina de registro y tambien poner una medida de seguridad.
0
Puntos
Por Jesxs hace 10 meses
Principiante offline Sitio web

Respuesta #10

me falto, tambien tienes que estar seguro que sea un bot el que este agregando los post, quizas no sea un bot, puede ser tambien alguna persona que te esta haciendo una mala pasada, por eso serciorate bien de que es el problema, asi podras corregirlo sin mayor problema.
0
Puntos
Por Jesxs hace 10 meses
Principiante offline Sitio web

Respuesta #11

Gracias jesxs! Yo creo que tiene que ser un bot por que es constante...

Are lo q me comentas y te iré diciendo :)
0
Puntos
Por zapikero hace 10 meses
Avanzado offline Sitio web

Respuesta #12

Al final el problema persiste... Así que estoy creando sistema de login para así bloquearlo.

Y con esto quedará solucionado :)
1
Puntos
Por zapikero hace 8 meses
Avanzado offline Sitio web

Respuesta #13

eso no es un bot, lo que pasa es que solo estas validando el campo MM_insert es decir puedes enviar el formulario completamente vacio solo tienes que dar clic en agregar y listo! ya tienes un post vacio insertado

trata de validar por javascript y php veras como no te entran mas nada, en el fichero que inserta despues de la conexión pon algo como esto:
if(!isset($_POST['nombre']) || $_POST['nombre']=='' || $_POST['estado']=='') exit;
pero con todos los campos $_POST que estas enviando que no son pocos y ademas pon validación javascript, aqui te lo explican de pu** madre https://www.youtube.com/watch?v=U9R-PUhwv_0&list=PLn6DZNSAhHfttuiGIbvEdyo_8OEWC6sAZ
1
Puntos
Por alber hace 8 meses
Administrador offline Sitio web

Relaccionados

Para comentar Inicia sesión o Registrate