Borrar Logs desde una shell cargada en un servidor.

Iniciado por Hax0r_666, Julio 27, 2015, 03:55:42 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Julio 27, 2015, 03:55:42 PM Ultima modificación: Julio 28, 2015, 09:57:57 AM por Expermicid
¿Si tengo una shell en un servidor puedo borrar los logs desde esta? Si es así ¿cómo lo hago?  ::)

Los logs de los comandos lanzados con el usuario se guardan en su carpeta personal, en un archivo llamado .bash_history

Si quieres un comando completo:
Código: bash
rm ~/.bash_history; history -c; logout
Contacto: @migueljimeno96 -

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
¿Si tengo una shell en un servidor puedo borrar los logs desde esta? Si es así ¿cómo lo hago?  ::)

Es muy importante saber que sistema operativo es donde guarda los log hay muchos servidores que guardan los log en particiones ocultas y la mejor forma es mirar el sistema operativo donde guarda los logs ( busca en google) y utilizar grep por si te quedo algo ya si quieres que cante menos puedes eliminar solo donde este tu ip usando grep de nuevo

Si no tienes muchos conocimientos puedes lanzar un zapper y te curas en salud, aunque es mucho más "marronero"

Saludos.



Julio 30, 2015, 12:11:51 PM #4 Ultima modificación: Julio 30, 2015, 02:36:04 PM por WhiZ
Si ponemos un espacio en blanco al principio del comando éste no se guardará en el histórico.
Código: bash
rand0m@box0:~$ history -c
rand0m@box0:~$  echo "This will not appear on history"
This will not appear on history
rand0m@box0:~$ echo "But this will"
But this will
rand0m@box0:~$ history
    1  echo "But this will"
    2  history
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

Julio 30, 2015, 01:38:07 PM #5 Ultima modificación: Julio 30, 2015, 02:36:29 PM por WhiZ
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si ponemos un espacio en blanco al principio del comando éste no se guardará en el histórico.
Código: bash
rand0m@box0:~$ history -c
rand0m@box0:~$  echo "This will not appear on history"
This will not appear on history
rand0m@box0:~$ echo "But this will"
But this will
rand0m@box0:~$ history
    1  echo "But this will"
    2  history


Código: bash
[b3n@genesis ~]$  echo "Si se guarda"
[b3n@genesis ~]$ history
  386   echo "Si se guarda"
  387  history
[b3n@genesis ~]$


01010111 01100001 01101011 01100101 00100000 01110101
01110000 00100000 01001110 01100101 01101111

Julio 30, 2015, 02:17:37 PM #6 Ultima modificación: Julio 30, 2015, 02:37:13 PM por WhiZ
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si ponemos un espacio en blanco al principio del comando éste no se guardará en el histórico.
Código: bash
rand0m@box0:~$ history -c
rand0m@box0:~$  echo "This will not appear on history"
This will not appear on history
rand0m@box0:~$ echo "But this will"
But this will
rand0m@box0:~$ history
    1  echo "But this will"
    2  history


Código: bash
[b3n@genesis ~]$  echo "Si se guarda"
[b3n@genesis ~]$ history
  386   echo "Si se guarda"
  387  history
[b3n@genesis ~]$



Código: bash

export HISTFILE=/dev/null
echo "¿Se guarda?"



Con eso no se guarda (es temporal)


Cuando acabes de ejecutar los comandos que desees lanzas:
Código: bash
history -c


y solucionado.
Contacto: @migueljimeno96 -

Julio 30, 2015, 03:31:56 PM #7 Ultima modificación: Julio 30, 2015, 04:46:38 PM por B3N
Cita de: Jimeno
Código: bash
export HISTFILE=/dev/null
echo "¿Se guarda?"

Código: bash
[b3n@genesis ~]$ export HISTFILE=/dev/null
[b3n@genesis ~]$ echo "se guarda de forma temporal"
[b3n@genesis ~]$ history
   ...
  495  echo "se guarda de forma temporal"
  496  history
[b3n@genesis ~]$


Es lo mismo con: export HISTFILE=
01010111 01100001 01101011 01100101 00100000 01110101
01110000 00100000 01001110 01100101 01101111

Julio 30, 2015, 03:42:08 PM #8 Ultima modificación: Julio 30, 2015, 04:44:21 PM por B3N
Esto es para que no se registren los comandos con un espacio delante, como dice rand0m:

Código: bash
[root@genesis ~]#  export HISTCONTROL=ignorespace


Probemos a ver:
Código: bash
[root@genesis ~]#   rm -rf /*
[root@genesis ~]#  history
bash: history: command not found
[root@genesis ~]# 


???


Espero que no se hayan creido esa ultima  ;)

PD: No obstante me parece que la duda de HAXOR_666 es como borrar los logs, no el historial de comandos. En este caso seria necesario que especificara en cual sistema quiere borrar los logs, Windows, Linux, Mac, etc.
01010111 01100001 01101011 01100101 00100000 01110101
01110000 00100000 01001110 01100101 01101111

Otro truquito!

Código: bash
rm .bash_history
ln -s /dev/null .bash_history
Web: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Twitter: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Eso es el historial de  comandos pero tambien hay logs de apache con conexiones http o los del servidor de correo si realizaste la intrusion por ellos deberias borrarlos.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Eso es el historial de  comandos pero tambien hay logs de apache con conexiones http o los del servidor de correo si realizaste la intrusion por ellos deberias borrarlos.

Como ya te dije, de uno en uno o bien usa un zapper...



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Eso es el historial de  comandos pero tambien hay logs de apache con conexiones http o los del servidor de correo si realizaste la intrusion por ellos deberias borrarlos.

Como ya te dije, de uno en uno o bien usa un zapper...
Tal y como se nos está planteando la pregunta el zapper es la mejor opción. Si sólo quieres borrar los logs de un servicio en particular lo mejor sería irse al archivo de configuración del servicio en cuestión (Por ejemplo /etc/apache2/apache2.conf).
¿Quieres borrar los logs de algún servicio en particular? A por él.
¿Quieres borrar todos los logs que puedas de un plumazo sin buscarlos por el sistema? Un zapper.
¿Quieres borrar todos los logs que puedas sin usar un zapper? Averigua cuáles son los logs que quieres borrar y guarda los archivos clave en una lista. Con ella podrás hacer tu propio zapper en Bash, Perl, Python o Ruby especialmente diseñado para que haga lo que tú quieres (Sin más sorpresas que las "funciones aleatorias que creamos en nuestros programas", mal llamados "bugs").
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Código: bash
[b3n@genesis ~]$  echo "Si se guarda"
[b3n@genesis ~]$ history
  386   echo "Si se guarda"
  387  history
[b3n@genesis ~]$

Vale, bien, tienes razón, no se puede ir con tanta seguridad. Para comprobar eso basta con hacer un par de cositas:
Código: bash
root@box0:/home/rand0m# cat /root/.bashrc |grep HISTCONTROL
root@box0:/home/rand0m# cat /home/rand0m/.bashrc |grep HISTCONTROL
HISTCONTROL=ignoreboth

Revisando el estado de HISTCONTROL en .bashrc podemos ver si nos da juego.
ignorespace es lo que hace que se guarden los comandos con el espacio delante.
ignoreboth es lo que hace que no se guarden los del espacio delante NI LOS REPETIDOS (Como un ls -l nc.log mientras esperamos a que algo se termine de transferir por netcat).
erasedups hace que no se muestren los comandos repetidos en el historial.
Es muy útil conocer esta chorradilla.
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.