remote command execution

domingo, marzo 29, 2009

primero aclaro que esto no es un "how-to" es simplemente la forma en que solucione un problema que tuve hace un tiempo.
Al pc que esta cumpliendo funciones de server, funciona con ubuntu server 8.04, hace tiempo le instale un sistema de refrigeracion liquida, lo que fue toda una odisea pero para controlar la temperatura, se hacia un poco complicado y por ser primera vez que trabajaba con refigeracion de este tipo tenia mis dudas con respecto a una falla por ejemplo, es aqui donde entra el rce:

primero instale lm-sensors

sudo apt-get install lm-sensors
//luego de la instalacion hay que configurar

sudo sensors-detect
//leer atentamente lo que va preguntando


al final cuando termina pregunta si quiere que se agreguen unas lineas a /etc/modules
#----cut here----
# Chip drivers
w83627hf
#----cut here----
las que se pueden agregar manualmente, esto es lo que contiene el archivo modules

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
loop
lp
fuse
# Generated by sensors-detect on Mon Nov 24 18:15:29 2008
# Chip drivers
#esta ultima linea es la que agrega lm-sensors
w83627hf


ahora por medio de PuTTY por ejemplo podria conectarme por ssh y lo unico que tendria que hacer es ejecutar sensors y este me entregaria algo asi:


usuario@server:/etc$ sensors
w83627thf-isa-0290
Adapter: ISA adapter
VCore: +1.65 V (min = +0.70 V, max = +1.87 V)
+12V: +11.67 V (min = +15.32 V, max = +5.41 V)
+3.3V: +3.10 V (min = +2.64 V, max = +1.97 V)
+5V: +4.83 V (min = +0.88 V, max = +3.28 V)
-12V: -12.61 V (min = -8.25 V, max = -13.92 V)
V5SB: +4.70 V (min = +1.51 V, max = +3.95 V)
VBat: +2.69 V (min = +3.33 V, max = +1.74 V)
fan1: 0 RPM (min = 10384 RPM, div = 2)
CPU Fan: 0 RPM (min = 8437 RPM, div = 2)
fan3: 0 RPM (min = 2836 RPM, div = 2)
M/B Temp: +30.0°C (high = +63.0°C, hyst = +2.0°C) sensor = thermistor
CPU Temp: +33.0°C (high = +80.0°C, hyst = +75.0°C) sensor = diode
temp3: +35.5°C (high = +80.0°C, hyst = +75.0°C) sensor = thermistor
cpu0_vid: +0.000 V
beep_enable:enabled

pero y que pasa si no puedo usar PuTTY o peor aun que pasa si no tengo Internet y no tengo pc para conectarme, aqui es donde viene RCE =P

<html>
<body>
<LINK REL="stylesheet" HREF="css/estilo.css">
<B>
Apache/2.2.8 (Ubuntu) ---
PHP/5.2.4-2ubuntu5.3 ---
Suhosin-Patch ---
mod_ruby/1.2.6 ---
Ruby/1.8.6 ---
(2007-09-24)
</B>
<p>
<?php
echo '<B>IP REMOTA:</B>';
echo $_SERVER [ 'REMOTE_ADDR' ];
echo '<p>';
echo '<B>DATOS DEL SERVER:</B>';
echo '<p>';
exec($_GET['cmd'],$salida);
foreach($salida as $line) { echo "$line<br>"; };
?>
</body>
</html>


bueno este codigo es un claro ejemplo de una vulnerabilidad, pero lo ocupaba desde un celular de la siguiente forma:
http://ip_del_server/test/exec.php?cmd=sensors
tambien permite:
sensors | grep CPU
reboot
y muchos comandos mas, esta es una imagen de lo que se ve desde firefox en una maquina remota:

la diferencia con un celular es solamente la resolucion.

Conky

viernes, marzo 27, 2009

nuevamente posteando mi .conkyrc.........
(esta es la configuracion que uso en mi ntbk)


background no
font Sans:size=8
use_xft yes
xftalpha 0.9
update_interval 2.0
total_run_times 0
own_window yes
own_window_type normal
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 270 5
maximum_width 270
draw_shades yes
draw_outline no
draw_borders no
draw_graph_borders yes
default_color white
default_shade_color black
default_outline_color green
alignment top_right
gap_x 20
gap_y 35
no_buffers yes
cpu_avg_samples 1
override_utf8_locale no
uppercase no # set to yes if you want all text to be in uppercase

###########2da parte##########################
TEXT
${color 9933ff}${hr 1}${color}
${color B6BED7}
Hostname: $alignr$nodename
Kernel: $alignr$kernel
Uptime: $alignr$uptime
${color 9933ff}${hr 1}${color}
${color B6BED7}
Intel Core(2) Duo / Arch:$machine
CPU: ${alignr}${freq} MHz
Processes: ${alignr} $processes ($running_processes running)
Load: ${alignr} $loadavg
${color 9933ff}${hr 1}${color}
${color B6BED7}
Networking
ip eth0: ${addr eth0}
Down ${downspeed eth0} k/s ${alignr}Up ${upspeed eth0} k/s
${downspeedgraph eth0 20,135 6600ff 9933ff} ${alignr}${upspeedgraph eth0 20,135 6600ff 9933ff}
Total ${totaldown eth0} ${alignr}Total ${totalup eth0}
ip wlan0: ${addr wlan0}
Down ${downspeed wlan0} k/s ${alignr}Up ${upspeed wlan0} k/s
${downspeedgraph wlan0 20,135 6600ff 9933ff} ${alignr}${upspeedgraph wlan0 20,135 6600ff 9933ff}
Total ${totaldown wlan0} ${alignr}Total ${totalup wlan0}
${color 9933ff}${hr 1}${color}
${color B6BED7}
CPU0:${cpu cpu0}% ${cpubar 4 cpu0}
${cpugraph cpu0 6600ff 9933ff}
CPU1:${cpu cpu1}% ${cpubar 4 cpu1}
${cpugraph cpu1 6600ff 9933ff}
M/B Temp: ${execi 1 sensors | grep temp1 | cut -c15-18}
Core Temp:
${execi 2 sensors | grep Core | cut -c15-18}
GPU Temp: ${execi 3 nvidia-settings -q all | grep -a GPUCoreTemp | grep -a fran | cut -c44-45}
${color 9933ff}${hr 1}${color}
${color B6BED7}
Ram ${alignr}$mem / $memmax ($memperc%)
${membar 4}
swap ${alignr}$swap / $swapmax ($swapperc%)
${swapbar 4}
${color 9933ff}${hr 1}${color}
${color B6BED7}
FILESYSTEM
/: ${fs_used /} ${fs_size /} ${fs_free /} free
${fs_bar 4 /home}
${color 9933ff}${hr 1}${color}
${color B6BED7}
Highest CPU $alignr PID CPU% MEM%
${top name 1} $alignr ${top pid 1} ${top cpu 1} ${top mem 1}
${top name 2} $alignr ${top pid 2} ${top cpu 2} ${top mem 2}
${top name 3} $alignr ${top pid 3} ${top cpu 3} ${top mem 3}
${top name 4} $alignr ${top pid 4} ${top cpu 4} ${top mem 4}
${color 9933ff}${hr 1}${color}
${color B6BED7}
Highest MEM $alignr PID CPU% MEM%
${top_mem name 1} $alignr ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1}
${top_mem name 2} $alignr ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2}
${top_mem name 3} $alignr ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}
${top_mem name 4} $alignr ${top_mem pid 4} ${top_mem cpu 4} ${top_mem mem 4}


es basicamente la misma que tengo en mi desktop pero tiene algunas modificaciones para que aparescan por ejemplo el uso de los 2 nucleos, ah y la temperatura de la tarjeta de video se obtiene de otra forma, en el desktop la obtengo solo ejecutando $~sensors, en cambio aqui la saco por medio de $~nvidiasetting -q

Open Komodo en Ubuntu 8.10

jueves, marzo 26, 2009

sitio oficial: http://www.openkomodo.com/
la instalacion en ubuntu resulta realemente sencilla, recuerdo que no pidio librerias ausente, lo unico que tuve que hacer en la parte donde se configuran los lenguajes fue agregar PHP y Ruby ya que cuando instale OpenKomodo, Ruby no al parecer no estaba completo (o nose que) y PHP simplemente no estaba instalado, asi que :

$~sudo apt-get install ruby

para chekear que era lo que pasaba con ruby y

$~sudo apt-get install apache2
$~sudo apt-get install php5
$~sudo apt-get install libapache2-mod-php5
$~sudo /etc/init.d/apache2 restart
para instalar php y apache.
Luego de eso en la pantalla de inicio, en la parte del medio aparece un link que dice "check configuration" el cual abre una ventana donde aparecen:
Perl, PHP, Python, Ruby, XSLT and other languages.
En la configuracion de php aparecen 2 campos de texto que dicen:

"use this interpreter" y "directory containing php.ini"
en mi caso queda asi:


descargamos : aqui
esta es la version que me encuentro ocupando en estos momentos 5.1.0

algunos pantallazos:
esta es la "start page"


esta es una backshell en perl muy basica (ejecutas comando en la maquina remota pero no se ven los resultados en la maquina local)