Siete puntos a tener en cuenta para comprar on-line.

En estas fechas navideñas se hacen muchas compras, y en los últimos años las compras on-line han crecido exponencialmente. Tanto como para colapsar los centros de algunas empresas de transporte. Pero ¿Son seguras? En los últimos años la seguridad de estas transacciones también ha mejorado mucho, pero sin una serie de buenas prácticas por parte del usuario todo el trabajo de los programadores de dichos sistemas puede irse al garete.

Hace unas semanas, motivados por el Black Friday, INCIBE y OSI realizaron una guía con una serie de pasos para comprar de forma segura en Internet. Con ánimo divulgativo os dejo por aquí la infografía que realizaron y también este enlace donde podéis ver el contenido del post original en el sitio web de la OSI.

Guía OSI INCIBE compra on-line

 

Detectar intrusos en tu wifi desde Android o iOS

En el pasado vimos cómo detectar intrusos en tu wifi con Windows (ya hace años de eso) y desde Ubuntu. Pero ¿y si eres un usuario que tiene sólo tablet y móvil? ¿puedes saber si te están vampirizando la wifi? Puedes. Existen varias apps para ello, pero creo que la más sencilla es Fing, que además en su versión más básica es gratis.

Fing es una aplicación que te permite escanear la red a la que estás conectado, y por suerte existen versiones para varios sistemas operativos. De hecho puedes usar también Fing desde un portátil o sobremesa ya que también tiene versiones para Linux, Windows y MacOSX.

Centrándonos en la versión móvil, no puede ser más sencilla de usar: la puedes descargar desde aquí y, una vez instalada, basta ejecutar la aplicación para ver qué equipos hay conectados a la red. Los móviles tendrán un icono distintivo, al igual que el router o punto de acceso al que esté conectado el teléfono. Una vez veas la lista puedes calcular si ves algo raro, si hay algún equipo que no debiera estar conectado. En caso de que haya un invitado indeseado la mejor opción es que cambies la contraseña de la wifi.

Fing captura

Pulsando encima de cada dispositivo conectado podrás tener varias opciones: una es ver la MAC del dispositivo, por si quieres añadir a tu router una regla de filtrado por MAC para impedir que ese equipo se conecte (aunque la MAC puede cambiarse, así que no es un método infalible para evitar conexiones indeseadas). Otra es la de etiquetar a ese dispositivo con un nombre a tu elección (por ejemplo «ordenador del salón«) para facilitar su identificación cuando ejecutes el app. También puedes realizar un escaneado de puertos o lanzar un ping. Si decides hacerte una cuenta puedes disponer de notificaciones cuando alguien se conecte y más opciones.

Como ves es una solución fácil para tener controlado quién accede a tu wifi. Por cierto, que los creadores de Fing están trabajando en Fingbox, un dispositivo de hardware que facilitaría la expulsión de intrusos de tu red.

Creando contraseñas en Linux con mkpasswd

El programa mkpasswd, que es parte del paquete whois, nos permite generar contraseñas complejas y seguras a través de diversos algoritmos criptográficos.

Si no lo tienes instalado puedes agregar el paquete whois tal que así:

sudo apt-get update
sudo apt-get install whois

Una vez tengamos whois instalado ya podemos hacer uso de mkpasswd. Veamos que opciones tiene:

  • -m: Nos permite elegir el método con el que encriptaremos: entre des, md5,sha-256 y sha-512.
  • -5: Es una forma abreviada para seleccionar el método md5, sería equivalente a usar -m md5.
  • -S: Una cadena que usar como salt para el password.
  • -R: Definimos el número de rondas que se usarán, si son aplicables.
  • -P: Lee la contraseña del descriptor de fichero que le pasemos en lugar de hacerlo de /dev/tty
  • -s: Método acortado equivalente a -P 0

Por ejemplo:

#usamos el algoritmo sha-256
#pasamos como sal la cadena salamos1
mkpasswd -m sha-256 -S salamos1

#lo mismo pero con md5
mkpasswd -m md5 -S salamos1

Una captura viendo distintas opciones, distintos algoritmos y comprobando también cómo el salt no permite ciertos carácteres:
mkpasswd

Usando rel=»noopener» para evitar ataques crossdomain en páginas abiertas con target=»_blank»

Pues era un tema que desconocía hasta que lo vi ayer en el blog de Chema Alonso, pero por lo que veo lleva rulando al menos desde el mes de mayo. ¿De qué estoy hablando? Te comento con un ejemplo (aunque puedes leerlo mejor explicado en los links previos): supongamos que quieres que un link se abra en una nueva pestaña, así que le pones target=»_blank». Al hacerlo de esta forma la página que has abierto en la nueva pestaña, mediante el selector window.opener puede modificar cosas a base de Javascript en la página desde la que se abrió el enlace. La mayoría de navegadores modernos limitan las posibilidades de esto y bloquean muchas de las acciones invocadas desde la ventaja hija sobre la padre, pero lo que se han dejado sin proteger es que dicha ventana hija puede acceder a la propiedad window.opener.location, y de esta forma mandarnos a una página desde la que hacer un ataque de phising.

¿Solución? Bueno, si es un enlace basta con el modificador noopener y el noreferrer:

<a href="paginanueva.html" target="_blank" rel="noopener noreferrer"/>

El noreferrer es necesario porque Mozilla Firefox no soporta noopener.

¿Y qué pasa si abrimos la ventana mediante Javascript utilizando el método window.open()? Pues que nos encontramos la misma vulnerabilidad. ¿Cómo la solucionamos? Tal que así (copio este ejemplo):

var newWnd = window.open();
newWnd.opener = null;

Cómo destruir un disco duro

Bueno, con el tema de la destrucción de los discos duros del ordenador de Bárcenas por parte del Partido Popular y las declaraciones de Celia Villalobos seguro que más de uno va a buscar en Google cómo destruir un disco duro. Desde luego el método usado por el PP está bien para conseguir la destrucción de los datos de los discos: 35 formateos, rallado de la superficie y martillazo a tentetieso. Creo que es el protocolo determinado por INTECO. Pero siendo sinceros, aunque sí es un método eficaz creo que no ha sido muy eficiente. A mi alguna vez me ha tocado destruir algunos que tenían que ir para el punto limpio.

Como primera nota: aunque quede muy de pro y de hacker de peli, usar un imán no es una solución. Hace años que los discos duros vienen muy bien apantallados contra campos magnéticos, así que necesitarías uno muy potente para poder destruir los datos. Por lo que, sacando que vivas cerca de un desguace de coches que tenga un electroimán muy potente, jugar a ser Magnus Lensherr no es la mejor opción.

Habría que pensar en qué interés puede tener alguien en recuperar tus datos para calcular cómo de concienzuda debe ser la destrucción de los discos. Recuperar datos tras varios formateos es complicado, por lo que para el usuario medio puede ser una solución. Tras una docena de formateos a bajo nivel el proceso de recuperación requiere de procedimientos largos y costosos que para la mayoría de usuarios son complejos en extremo, así que para la mayoría de la gente esto debería valer. Por otra parte, puede que sea más rápido soltarles un par de martillazos contundentes y tirarlos a un cubo de agua que formatear varias veces en profundidad. No garantiza al 100% la destrucción del disco, pero seguramente lo dañe lo suficiente para que no merezca la pena el esfuerzo de la recuperación.

Si lo que tienes entre manos es un SSD la cosa es básica: martillazo limpio. Le pegas hasta que se te canse la mano, que si bien estos discos son más fiables en el tema de impactos mientras están en funcionamiento, contra golpes directos y con mala leche caen antes. Si casca una celda de memoria ya queda irrecuperable. Por cierto, hay modelos que traen un sistema de autodestrucción que mediante un botón o incluso el uso de un comando envían una señal al disco para forzar que se sobrecargue y se queme.

Además existen máquinas especificas para realizar este trabajo, como trituradoras o prensas de discos. Eso sí, las buenas valen una pasta que no compensa sacando que tengas una empresa dedicada al tema de la seguridad y destrucción de documentos. Es más, las de gama más baja creo que andan por los 4000 euros hoy por hoy.

En el caso de Bárcenas la cosa es distinta. Ahí hablamos de datos sensibles, que interesan a la justicia que investiga el caso, a los partidos de la oposición y a millones de ciudadanos españoles. También debería interesar a la prensa española, pero están a lo suyo, a por el mendrugo. En fin, que no estamos hablando de un usuario cualquiera, aquí es de suponer que se dispondrían de los métodos más completos para la recuperación de datos.

En ese caso, ¿si tengo una información sensible y quiero asegurarme de que nadie accede a ella tras descartar el disco duro? Pues lo mejor es seguir el ejemplo de los profesiones, véase lo que hicieron los servicios de inteligencia del Reino Unido cuando fueron a destruir los discos duros del diario The Guardian con la información filtrada por Snowden: abrir los discos duros, sacar los discos magnéticos que los forman, lijarlos a base de bien con una lijadora, taladrarlos varias veces y finalmente quemarlos. Este proceso garantiza la destrucción de la información. También podría valer machacarlos a martillazos tras el lijado, o aplicarles un soplete sobre la superficie. Por eso digo que fueron efectivos, pero no muy eficientes ya que si se va a destruir el disco duro físicamente no acabo de ver la lógica a gastar tanto tiempo en realizar 35 formateos.

Aquí te dejo un vídeo con dos tíos vestidos como predicadores mormones explicando cómo destruir un disco duro:

Vamos con la última duda, que seguramente a muchos les interese ¿es normal destruir un disco duro? Sí, es normal en caso de que se trate de un disco que va a desecharse. ¿Obliga la LOPD a ello? En caso de que vaya a desecharse el disco, sí, lo indica el artículo 92.4 del Real Decreto 1720/2007 aunque de una forma no muy clara: «Siempre que vaya a desecharse cualquier documento o soporte que contenga datos de carácter personal deberá procederse a su destrucción o borrado, mediante la adopción de medidas dirigidas a evitar el acceso a la información contenida en el mismo o su recuperación posterior. «. Por otra parte la norma DIN 66399 nos da unas directrices más claras de cómo hacerlo según el nivel de confidencialidad de los datos y el tipo de soporte a destruir. ¿Es obligatoria la destrucción física de un disco duro si el ordenador cambia de usuario dentro de una misma empresa? No, en esos casos lo habitual es realizar un formateo con varias pasadas ya que  a fin de cuentas el equipo sigue perteneciendo a la misma empresa, aunque una empresa o administración puede establecer un nivel de seguridad más alto si lo considera conveniente.

Entonces, y a la vista de lo anterior, y saliéndonos del tema de la destrucción de discos duros para irnos al tema de la noticia que inspira este artículo ¿ha cometido un delito el PP al destruir los discos duros del ordenador de Bárcenas? No podría afirmarlo. Primero habría que saber en qué fecha se destruyeron los discos: si fue después de que el juez reclamase los ordenadores desde luego sí comenten un delito al estar destruyendo una prueba de forma deliberada e incumpliendo la petición del juez. Si fue antes de la petición pero se hizo con dolo, sabiendo que había información que podría dañar al partido y destruyéndola para ocultar el delito, entonces también sería un delito, pero sería más complicado demostrarlo. Si fue antes pero se hizo como un procedimiento de seguridad estándar, sin conocer que los discos contenían pruebas de una actividad delictiva pero suponiendo que sí incluían datos sensibles, entonces no habría delito.Por otra parte, el real decreto 1720/2007 antes citado, también en su artículo 92, en el punto 1, dice que «Los soportes y documentos que contengan datos de carácter personal deberán permitir identificar el tipo de información que contienen, ser inventariados y solo deberán ser accesibles por el personal autorizado para ello en el documento de seguridad» por lo que el argumento esgrimido de que no sabían qué documentos había en el disco duro me parece débil, sobre todo porque necesitan esto para justificar la destrucción del disco duro de acuerdo con la LOPD.

En fin, en cuanto a la destrucción de discos la cosa está clara: Si tienes un SSD lo pulverizas a martillazos. Si tienes un disco duro magnético lo desmontas, rallas las caras de los discos que lo forman (lijadora si tienes, si no una lija gorda) y los rompes, ya sea a base de martillo, taladro, sierra o soplete. En cuanto al tema Bárcenas, es a la fiscalía y al juez a quien compete dirimir si hay o no delito, habrá que confiar en la independencia de la justicia, aunque en los últimos años no hayan dado motivos para ello.

Tcpxtract: extraer archivos del tráfico de tu red

Supongamos que eres el sheriff de una red, ya sea doméstica o empresarial, y tienes que monitorizar el tráficto de la misma, para lo que estás usando por ejemplo Wireshark. Ahora imagina también que quieres extraer los ficheros que se ocultan en esa comunicación ¿cómo lo hacemos? Bueno, pues para eso está Tcpxtract.

El primer paso es instalarlo. En Windows lo puedes descargar dese Sourceforge, en el caso de Linux puedes instalarlo con apt tal que así:

sudo apt-get install tcpxtract

Y ¿cómo le damos uso? la sintxis sería

tcpxtract [OPTIONS] [[-d ] [-f ]],

permitiéndonos -d capturar desde una interfaz de red y -f hacerlo desde un fichero. Dos ejemplillos en Linux

#extraemos datos directamente
#de la caputra de nuestra tarjeta
#de red
tcpxtract -d eth0

#extraemos datos de un archivo
#de tipo pcap
#generado por Wireshark
tcpxtract -f ejemplo.pcap

Tcpxtract reconoce los archivos que se envían por su firma o huella, estando estas registradas en el archivo tcpxtract.conf, lo que nos permitiría en todo caso poder añadir más editándolo, si conocemos dicha firma.

Se puede añadir una opción -o que permitiría definir en qué carpeta queremos que se extraigan los archivos capturados de nuestro tráfico.

#extraemos datos de un archivo
#de tipo pcap
#generado por Wireshark
#ejemplo definiendo salida
tcpxtract -f ejemplo.pcap -o imagenesExtraidas

Ten en cuenta este tipo de cosas, tanto por los temas de seguridad en las comunicaciones y usar siempre que sea posible la conexión https como si decides colarte en la wifi de tu vecino para usarla de gratis.

Lynis 2.2.0 ya ha salido. ¿Cómo lo instalo en mi Linux?

Lynis es una conocida herramienta para auditoría de seguridad en sistemas UNIX/Linux. Nos permite gestionar parches de seguridad de nuestro software, buscar malware y detectar vulnerabilidades en nuestro sistema. Una herramienta básica para administradores de sistemas, pentesters y demás gente que deba encargarse de la seguridad.

¿Cómo podemos contar con Lynis en nuestro sistema? Muy simple, en tres pasos:

##Primero creamos un
##directorio para guardar
##Linys
mkdir /usr/local/lynis

#Nos situamos en dicho directorio
cd /usr/local/lynis

##Con la herramienta
##wget descargamos el
##paquete de Lynis comprimido
wget https://cisofy.com/files/lynis-2.2.0.tar.gz

##Ahora ya sólo nos queda
##desempaquetar el Lynis
tar -xvf lynis-2.2.0.tar.gz

##Un último dato: para funcionar
##lynis requiere permisos de administrador
##así que ejecútalo precedido de sudo
#como en el ejemplo
cd lynis
sudo ./lynis

En el ejemplo ejecuto Lynis sin parámetros, de esta forma os mostará la información de todos los que puede recibir para que así podáis darle uso a la herramienta. Probablemente en el futuro haga algún tutorial sobre esta herramienta si os interesa.

Cifrar una memoria USB en Ubuntu

Tras una serie de artículos dedicados a otros temas volvemos con algunas de mis cuestiones favoritas: software libre, cifrado/encriptación y seguridad informática. Aunque algunos gobiernos nos quieran hacer creer que esto es sólo para quien tiene algo que ocultar, la privacidad es un derecho y el cifrado una herramienta necesaria para ello. ¿A alguien le parecería lógico pedir una ley  nos obligara a vivir en casas de paredes transparentes? ¿que quitáramos las persianas de nuestras ventanas y las cerraduras de nuestras puertas por si ocultamos algo tras ellas? El cifrado es la pared de tus datos, es la persiana, es la puerta.

En mis tiempos de subsistencia freelance llevaba muchas veces el proyecto de un cliente en un pendrive. ¿Qué pasaría si lo pierdo? La propia Ley Orgánica de Protección de Datos nos solicita almacenar la información sensible de una persona de forma segura. Si la tengo que llevar en una unidad extraíble entonces esta necesariamente debe estar cifrada.

Lo primero para nuestro caso es instalar el paquete cryptsetup si todavía no lo tenemos disponible en nuestra distro:

sudo apt-get install cryptsetup

Una vez instalado, y con el pendrive conectado al equipo, abrimos el administrador de discos de Ubuntu.

Administrador de discos de Ubuntu

Bajo la tabla de particiones del dispositivo verás un botón cuadrado parecido a un botón de stop (en la captura que he puesto a continuación es un botón de play porque ya lo había pulsado) que nos dará la opción de desmontar el volumen.

Particionando unidad usb

Una vez desmontado el volumen pulsas el botón con dos engranajes que está a la derecha del de desmontar y eliges la opción de Formatear. En el menú desplegable de la ventana flotante que se abrirá eliges Cifrado, compatible con sistemas Linux (LUKS + Ext4) en el menú desplegable con todos los formatos. Como puedes observar este método nos permite cifrar una partición, de forma que si no quieres no tienes por qué cifrar todo el pen, puedes hacerlo sobre una parte y dejar otra con menos seguridad para llevar algo intrascendente y tener un acceso más rápido. Seguidamente añades un nombre para el volumen que vas a formatear y una contraseña.

Finalizando el formateo de unidad cifrada

Si en el futuro quieres deshacerte de la partición formateada tendrás que volver a formatear el dispositivo, pero en cambio si quieres cambiar la contraseña el administrador de discos te dará esa opción.

Cuando insertes un volumen así cifrado en un equipo con Ubuntu te dará varias opciones: pedir siempre la contraseña, recordarla mientras dure la sesión o recordarla siempre. Esta última puede ser muy cómoda, pero piensa que en según qué casos puede que no te interese que los datos estén accesibles siempre que el pen se conecte a ese equipo.

Clase para prevenir ataques XSS en Java

Buscando información para aumentar la seguridad de una aplicación web basada en Java me encontré con esta clase para filtrar los posibles ataques XSS en la web de un veterano ingeniero llamado Ricardo Zuasti.

Su solución propone dos clases. La primera, que copio de su entrada original a continuación, lo que hace es filtrar las peticiones HTTP para que sean filtradas por la clase especializada creada para eso:

public class XSSFilter implements Filter {
 
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
    }
 
    @Override
    public void destroy() {
    }
 
    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
        throws IOException, ServletException {
        chain.doFilter(new XSSRequestWrapper((HttpServletRequest) request), response);
    }
 
}

Tras esto propone la siguiente clase para realizar el filtrado. Esta clase sobreescribe los métodos getParameterValues(), getParameter() y getHeader() y utiliza una serie de patrones para evitar la entrada de código malicioso en tu web. El método stripXSS() es el que realiza la labor de filtrado.

import java.util.regex.Pattern;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
 
public class XSSRequestWrapper extends HttpServletRequestWrapper {
 
    private static Pattern[] patterns = new Pattern[]{
        // Script fragments
        Pattern.compile("<script>(.*?)</script>", Pattern.CASE_INSENSITIVE),
        // src='...'
        Pattern.compile("src[\r\n]*=[\r\n]*\\\'(.*?)\\\'", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL),
        Pattern.compile("src[\r\n]*=[\r\n]*\\\"(.*?)\\\"", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL),
        // lonely script tags
        Pattern.compile("</script>", Pattern.CASE_INSENSITIVE),
        Pattern.compile("<script(.*?)>", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL),
        // eval(...)
        Pattern.compile("eval\\((.*?)\\)", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL),
        // expression(...)
        Pattern.compile("expression\\((.*?)\\)", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL),
        // javascript:...
        Pattern.compile("javascript:", Pattern.CASE_INSENSITIVE),
        // vbscript:...
        Pattern.compile("vbscript:", Pattern.CASE_INSENSITIVE),
        // onload(...)=...
        Pattern.compile("onload(.*?)=", Pattern.CASE_INSENSITIVE | Pattern.MULTILINE | Pattern.DOTALL)
    };
 
    public XSSRequestWrapper(HttpServletRequest servletRequest) {
        super(servletRequest);
    }
 
    @Override
    public String[] getParameterValues(String parameter) {
        String[] values = super.getParameterValues(parameter);
 
        if (values == null) {
            return null;
        }
 
        int count = values.length;
        String[] encodedValues = new String[count];
        for (int i = 0; i < count; i++) {
            encodedValues[i] = stripXSS(values[i]);
        }
 
        return encodedValues;
    }
 
    @Override
    public String getParameter(String parameter) {
        String value = super.getParameter(parameter);
 
        return stripXSS(value);
    }
 
    @Override
    public String getHeader(String name) {
        String value = super.getHeader(name);
        return stripXSS(value);
    }
 
    private String stripXSS(String value) {
        if (value != null) {
            // NOTE: It's highly recommended to use the ESAPI library and uncomment the following line to
            // avoid encoded attacks.
            // value = ESAPI.encoder().canonicalize(value);
 
            // Avoid null characters
            value = value.replaceAll("\0", "");
 
            // Remove all sections that match a pattern
            for (Pattern scriptPattern : patterns){
                value = scriptPattern.matcher(value).replaceAll("");
            }
        }
        return value;
    }
}

Entre las recomendaciones que da en el artículo original está la de configurar este filtro como el primero en tu web.xml y también, en referencia al código que aparece comentado en la segunda clase, echarle un ojo a la librería ESAPI, que nos proporciona diversas soluciones de seguridad.

Desde aquí sólo me queda enviarle mi agradecimiento por su trabajo al señor Zuasti y animarle a recuperar su blog, que tiene material interesante pero hace tiempo que no actualiza.

Seguridad en WordPress ¿cómo cambiar el prefijo de la base de datos?

Si alguna vez has hecho una instalación de WordPress verás que te solicita, para crear el sitio, el nombre de una base de datos, el usuario con el que se conectará a ella, la contraseña de ese usuario y un prefijo. ¿Por qué un prefijo? Simplemente porque así puedes tener varias instalaciones de WordPress (o de otros CMS que usen nombres de tabla muy genéricos tipo «users», «posts», etc.) en una misma base de datos.

Si no cambiamos esta configuración por defecto el sistema pondrá el prefijo «wp_» a las tablas. El no poner un prefijo personalizado, en si, constituye un error. Porque dejando el prefijo por defecto estás provocando: a)Que si un atacante logra ver el nombre de una tabla descubra que el CMS que estás utilizando es WordPress y b) Que dicho atacante, entonces, pueda conocer los nombres de las tablas de tu base de datos. La solución es simple, durante la instalación define un prefijo personalizado.

¿Ya lo tienes instalado? Don’t worry, be nécora. No está todo perdido, tienes todavía varias opciones. La más rápida y simple, instalas este plugin que te permitará cambiarla cómodamente desde la interfaz gráfica. ¿La versión más larga y compleja y élite? Pues los siguientes pasos te lo explican:

Bueno, como paso previo, o paso 0 del proceso HAZ UN BACKUP DE TU BASE DE DATOS POR SI ALGO FALLA Y TIENES QUE RECUPERARLA. Consejo que debes tener siempre en mente cuando te pongas a tocar tablas de una instalación de cualquier cosa.

El primer paso: ir a wp-config.php y cambiar ahí el prefijo (en nuestro caso pondremos como prefijo personalizado my_b457Bch33s_ ).

$table_prefix  = 'my_b457Bch33s_';

El siguiente paso es renombrar todas las tablas de tu instalación de wordpress:

/*Básicamente vas haciendo esto con todas las tablas*/
RENAME table `wp_comments` TO `my_b457Bch33s_comments`;

Tras renombrar las tablas haces un update sobre la tabla options buscando todas las líneas que hagan referencia a tablas con el prefijo viejo para actualizarlas:

UPDATE `my_b457Bch33s_options` SET `option_name`=REPLACE(`option_name`,'wp_','my_b457Bch33s_') WHERE `option_name` LIKE '%wp_%';

Y con la tabla usermeta tres cuartos de lo mismo, update que te crió.

UPDATE `my_b457Bch33s_usermeta` SET `meta_key`=REPLACE(`meta_key`,'wp_','my_b457Bch33s_') WHERE `meta_key` LIKE '%wp_%';

Y tras esto deberías tener todo funcionando de nuevo, pero con el nuevo prefijo, más seguro contra potenciales atacantes.