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 - kicking people

#1
Cita de: castg" en 16 Diciembre 2009, 14:21 PM
mira por lo que yo tengo entendido, cuando consultas algo en una inyeccion sql se consultan en todas las bases de datos.

¿en todas las bases de datos? eso no me queda muy claro

Cita de: castg" en 16 Diciembre 2009, 14:21 PM
seguro estaras buscando algun user de admin o algo, si es asi y es que existe el "admin.php" y no encontras nada en la base de datos es porq se comprueba en el mismo admin.php, asiq ue trata de cargar el archivo.

si, busco algo de eso. pero mirando los php que manejan la bd, acceden a una base de datos en la que esta la informacion de los admin.

Cita de: castg" en 16 Diciembre 2009, 14:21 PM
igual por si queres ver las bases de datos yo ya habia preguntado esto en este mismo foro, asi que falta un cachito de google ahi :P http://foro.elhacker.net/nivel_web/bases_de_datos_en_sqli-t275216.0.html

lo voy a mirar mejor lo que me pasaste porque hasta donde veo el acceso a la otra bd se lo da pasandole algo asi, SELECT * FROM BD2.tabla, si es así ya lo probé y no devuelve nada. Supongo que será porque necesita el usuario y contraseña (que ya los tengo) para acceder a la BD2. lo que me falta es como pasarle esos datos.
Gracias y saludos!


#2
Nivel Web / Blind SQLi - Select a una BD distinta
16 Diciembre 2009, 06:04 AM
Buenas, encontré una página vulnerable a BSQLi que corre MySQL. Realizo el BSQLi en una de las condiciones del campo WHERE.
Logré acceder a los datos en las tablas, pero llegado un punto me tope con el siguiente problema. Los datos a los que quiero acceder no se encuentran en la BD de los que se sirve la aplicación, sino que estan en otra. Por ejemplo, el SELECT vulnerable se hace de la Tabla1 en la BD1 y yo quiero acceder a la Tabla2 de la BD2. Intente haciendo un SELECT BD2.Tabla1 pero no anduvo. Buscando más conseguí hacer un disclosure de algunos .php, y me hice con el user y pass para la BD2, la pregunta es como realizar un SELECT que pase el usuario y la pass para que me permita tener acceso a la BD2.
Saludos!
#3
Hacking Mobile / Re: Ayuda Samsung X-576
20 Junio 2008, 17:13 PM
Gracias Sir Graham!

Estuve averiguando un poco más y quería saber si el Samsung X-576 tiene soporte para MIDP 2.0?? porque busqué pero no detallaban las características.

Saludos!!
#4
Hacking Mobile / Ayuda Samsung X-576
20 Junio 2008, 05:43 AM
Hola, estoy por comprarme un ceular... posiblemente el Samsung X-576, pero quería saber si era útil para iniciarme con Bluetooth, o si es preferible el Nokia 6555
#5
Nivel Web / Re: Duda SQL Injection
2 Junio 2008, 19:35 PM
Cita de: Azielito en  2 Junio 2008, 19:33 PM
Cita de: sirdarckcat en 25 Mayo 2008, 07:42 AM
eso no siempre se puede hacer azielito :-X.. solo en sistemas no-mysql
SELECT * FROM users;(INSERT INTO users VALUES (1,2,3))

Regresa:



De hecho es muy raro que se pueda, requires que el sistema encargado de hacer las consultas separe las queries individualmente antes de hacer las peticiones.



¿Y no hay forma alguna de separar las queries desde el  form?
Saludos y gracias!
#6
Buenas, estuve leyendo sobre algunos manuales en el foro, entonces monte un pequeño server de prueba con Apache y MySql y trate de realizar las prácticas.
Luego de loggearme exitosamente utilizando el:' OR 1=1#, quise ponerme a utilizar otros comandos para modificar la DB como por ejemplo crear una base de datos, entonces inserte en el campo donde iba el password lo siguiente:
'; CREATE DATABASE nuevadb;#
pero me devolvió un error y no creo la base de datos, agregue un pedazo de código para que me muestre la consulta y el resultado es el siguiente:

(el resultado de error, antes no lo devolvía al momento de hacer el ' OR 1=1#)...
Luego para ver si estaba la sintaxis bien escrita, pasé a ejecutar ese comando en la consola de MySql y anduvo perfecto...


Alguien sabe por qué a la hora de crear la base de datos desde el formulario no la crea y por qué desde la consola si..??

Saludos!!!
#7
Cita de: karmany en 18 Junio 2006, 10:51 AM
Creo que el error lo tienes en cómo haces el RsRecordSet.Find

Prueba de esta forma:
RsRecordSet.Find ("Login ='" & Nodo2 & "'")

De todos modos te da errores cuando tienes registros vacíos, intenta cuando pongas un nuevo usuario o lo que sea que el registro vacío te lo ponga en 0 por ej.
Es un consejo porque cuando luego tengas por ej. 800 usuarios te va a ser más difícil poner todo a cero..
Espero te funcione bien.

Impecable... funciona perfecto.. Voy a fijarme lo de los usuarios vacios... Muchas gracias Gangrel y karmany por su ayuda!!
#9
Cita de: Gangrel en 17 Junio 2006, 22:46 PM
No pues esta dificil, y el proyecto es grande, ya estuve un rato buscando asimple vista si encontraba el error y no doy con el y la verdad no creo que alguien lo adivine, si no puedes dar con el y quieres que te allude; zipea todo el proyectol, subelo a un server y pones el link y entonces si que es mas facil alludarte.

Muchas gracias. Estoy preparando todo en unos segunditos lo subo
#10
Hola, tengo una inquietud al tratar de modificar un archivo para acceder a una base de datos. Yo había creado una agenda con el manual de la revista de HxC (Revista Número 10) en el cual tenía los teléfonos  que necesitaba, y a este programa le había agregado la opción de buscar en la base de datos una entrada.

Dejo parte del código del programa, solo lo más importante (si a alguien le interesa todo el código, postear que lo pongo entonces) :


Option Explicit
Dim Conn As ADODB.Connection
Dim RsRecordSet As ADODB.Recordset
Dim Opcion As String

Private Sub cmdBuscar_Click()
    Dim tItem As ListItem
    Dim lvwFind As ListFindItemHowConstants
    Dim lvwWhere As ListFindItemWhereConstants
    Dim i As Long
    Dim s As String
        lvwFind = lvwPartial
    Set tItem = List.FindItem(Text1, lvwWhere, 1, lvwFind)
    If Not tItem Is Nothing Then

        ListView1.SelectedItem.Selected = False
        For i = 1 To List.ListItems.Count
            If List.ListItems(i).Selected Then
                List.ListItems(i).Selected = True
            End If
        Next
        tItem.Selected = True
        Text1 = tItem.Text
        s = ""
        For i = 2 To List.ColumnHeaders.Count
            s = s & tItem.SubItems(i - 1) & vbCrLf
        Next
        Text4 = s
        tItem.EnsureVisible
            Else
        Text4 = "No se ha hallado el elemento buscado"
    End If
    Call Pintar
End Sub

Private Sub Form_Load()
Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bd.mdb;Persist Security Info=False"
Set RsRecordSet = New ADODB.Recordset
RsRecordSet.Open "Telefonos", Conn, adOpenDynamic, adLockOptimistic
Call LlenarList
End Sub

Sub LlenarList()
Dim Nodo As ListItem
List.ListItems.Clear
RsRecordSet.Requery
RsRecordSet.MoveFirst
While Not RsRecordSet.EOF
Set Nodo = List.ListItems.Add(, , RsRecordSet("Id"))
Nodo.SubItems(1) = RsRecordSet("Nombre")
Nodo.SubItems(2) = RsRecordSet("Telefono")
Nodo.SubItems(3) = RsRecordSet("Direccion")
RsRecordSet.MoveNext
Wend
List.Refresh
End Sub

Sub Pintar()
Dim Nodo2 As ListItem
Set Nodo2 = List.SelectedItem
RsRecordSet.MoveFirst
RsRecordSet.Find "Id=" & Nodo2
If Not RsRecordSet.EOF Then
TxtId.Text = RsRecordSet("Id")
TxtNombre.Text = RsRecordSet("Nombre")
TxtTelefono.Text = RsRecordSet("Telefono")
TxtDireccion.Text = RsRecordSet("Direccion")
End If
End Sub

Private Sub List_Click()
Call Pintar
End Sub

Private Sub Limpiar()
TxtId = ""
TxtNombre = ""
TxtTelefono = ""
TxtDireccion = ""
End Sub

Private Sub Salir2_Click()
Call Salir_Click
End Sub


Y El Form es este:


Ahora lo que estaba haciendo era tratar de modificar esa base de datos para que en vez de abrir una agenda telefónica, y ahora como ejercicio me propuse que pueda abrir una base de datos de un programa (Cibercontrol), lo poco que cambiaría es que en vez de abrir la tabla "Teléfonos" abra la tabla "Cuentas" (sería la que yo necesito de esa base de datos), entonces reemplace en el Form_Load:
RsRecordSet.Open "Telefonos", Conn, adOpenDynamic, adLockOptimistic

lo reemplace por esto:
RsRecordSet.Open "Cuentas", Conn, adOpenDynamic, adLockOptimistic


Después hice algunos cambios para que en vez de que me muestre en la base de datos los campos: Id, Nombre, Teléfono, Dirección; solo me muestre los campos: "Login", "Pass", "Bonotiempo".

Entonces reemplace esto:
Sub LlenarList()
Dim Nodo As ListItem
List.ListItems.Clear
RsRecordSet.Requery
RsRecordSet.MoveFirst
While Not RsRecordSet.EOF
Set Nodo = List.ListItems.Add(, , RsRecordSet("Id"))
Nodo.SubItems(1) = RsRecordSet("Nombre")
Nodo.SubItems(2) = RsRecordSet("Telefono")
Nodo.SubItems(3) = RsRecordSet("Direccion")
RsRecordSet.MoveNext
Wend
List.Refresh
End Sub


Por esto:


Sub LlenarList()
On Error Resume Next
Dim Nodo As ListItem
List.ListItems.Clear
RsRecordSet.Requery
RsRecordSet.MoveFirst
While Not RsRecordSet.EOF
Set Nodo = List.ListItems.Add(, , RsRecordSet("Login"))
Nodo.SubItems(1) = RsRecordSet("Pass")
Nodo.SubItems(2) = RsRecordSet("Bonotiempo")
RsRecordSet.MoveNext
Wend
List.Refresh
End Sub


La función On Error Resume Next, la puse porque en algunas bases de datos algunos de esos campos están vacios y me dan error.

Al hacer esos cambios cuando ejecuto el programa, se carga todo correctamente, con los login los pass y el bonotiempo, pero cuando hago click en un casillero del listview me devuelve este error:

Error 3001 en tiempo de ejecución:
Argumentos incorrectos fuera del intervalo permitido o en conflicto con otros.

Y me señala esta parte del código:
RsRecordSet.Find "Login=" & Nodo2

No encuentro el error y ya llevo un tiempo tratando de solucionarlo pero nada.
Quisiera saber si me pueden echar una mano de como solucionarlo. Gracias de antemano