1. Forum
    1. Unerledigte Themen
  2. Artikel
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  4. Blog
    1. Artikel
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Forum
  • Blog-Artikel
  • Seiten
  • Erweiterte Suche
  1. StageTwo - Deine Wohlfühloase
  2. Mitglieder
  3. Samagon

Beiträge von Samagon

  • Elektroherd brücken

    • Samagon
    • 17. Februar 2012 um 20:13

    schwarz, die farben sind

    schwarz L1
    blau L2
    schwarz L3
    Grau N
    Rot PE

    ist eine alte norm und auf einem von den schwarzen ist kein strom drauf und es sind alle automaten im sicherkasten an

  • Elektroherd brücken

    • Samagon
    • 17. Februar 2012 um 15:51

    Hab ein problem will ein Herd anschließen doch habe von der Wand aus nur 2 phasen mit Strom an der dritten ist nichts. Kann man eine Phase ohne weitere brücken?

  • Detours

    • Samagon
    • 16. Februar 2012 um 22:27

    Es existiert eine selbstgemachte Funktion von gamedeception(Twice ?!?).

    Code
    LPVOID DetourCreate(LPVOID lpOldFunc, LPVOID lpNewFunc, int nSize)
    {
    	// First, check the params.
    	if(nSize < 5 || lpOldFunc == NULL || lpNewFunc == NULL)
    		return NULL;
    
    
    	// This is the codecave, which contains the saved opcodes and the jumpingback.
    	LPBYTE lpOpcodes = new BYTE[nSize + 5];
    
    
    	// The patch, which contains a jump to lpNewFunc and maybe some NOPs.
    	LPBYTE lpPatch = new BYTE[nSize];
    
    
    	// Calculate the distance of both functions, because the JMP-Command needs it.
    	DWORD dwFuncDist = PtrToUlong(lpNewFunc) - PtrToUlong(lpOldFunc) - 5;
    
    
    	// Calculate the distance between the Codecave and the To-Hook-Function.
    	DWORD dwOpDist = PtrToUlong(lpOldFunc) - PtrToUlong(lpOpcodes) - 5;
    
    
    	// Used by VirtualProtect.
    	DWORD dwBack = 0;
    
    
    
    
    	// Give access to write the patch.
    	VirtualProtect(lpOldFunc, 5, PAGE_READWRITE, &dwBack);
    
    
    	// Save the opcodes.
    	memcpy(lpOpcodes, lpOldFunc, nSize);
    
    
    	// Write JMP-Command for the jumpingback.
    	lpOpcodes[nSize] = 0xE9;
    
    
    	// Write the needed parameter (distance) for the jumpingback.
    	memcpy(&lpOpcodes[nSize + 1], &dwOpDist, 4);
    
    
    	 // Write the JMP-Command for calling the new function in the patch.
    	lpPatch[0] = 0xE9;
    
    
    	// Write address of the new function in the patch.
    	memcpy(&lpPatch[1], &dwFuncDist, 4);
    
    
    	// Fill the remaining Opcodes with NOPs.
    	for(int i = 5; i < nSize; i++)
    		lpPatch[i] = 0x90;
    
    
    	// Write the patch!
    	memcpy(lpOldFunc, lpPatch, nSize);
    
    
    	// Restore old protection.
    	VirtualProtect(lpOldFunc, 5, dwBack, &dwBack);
    
    
    	// Free non-needed space.
    	delete[] lpPatch;
    
    
    	// Return the CodeCave
    	return lpOpcodes;
    }
    Alles anzeigen


    Die dann so eingesetzt wird:

    Code
    HMODULE hWS32 = LoadLibraryA( "ws2_32.dll" );
    		FARPROC pConnect = GetProcAddress(hWS32,"connect");
    		DetourCreate((LPVOID)pConnect,my_connect,5);
    		__asm mov [ o_connect ], eax;

    So wie ich das sehe wird nicht im MainModul sprich z.b. Game.exe die funktion umschrieben, sondern in der ws2_32.dll. Durch VirtualProtect wird das schreiben möglich. Nun ist hier die Sache du kannst nicht direkt eine funktion schreiben und sie einfach für dich arbeiten lassen. Du musst deine funktion selber also schritt für schritt und byte für byte schreiben. Was viel umständlicher ist und man für sowas zu faul ist vorallem braucht man erfahrung in ASM und bei großen Codes ist das schon ne große sache :)

  • Detours

    • Samagon
    • 11. Februar 2012 um 21:20

    Da ich mich in letzter Zeit mit Detours beschäftige und in C++ anwende(was gar nicht mein fachgebiet ist). Wollte ich es mal in C# versuchen was ja genauso eigentlich gar nicht möglich ist. Habe dann ein wenig gegoogelt und bin auf Easyhook und Whitemagic gestoßen. Wollte mal Fragen ob jemand erfahrung in dem Bereich Detours mit C# hat und wie sehr begrenzt ich bin und ob es sich jetzt nur z.b. für das hooken der connect funktion lohnt.

  • Proxy connection aufnehmen (scheitert)

    • Samagon
    • 6. Februar 2012 um 18:36

    poste mal den socket teil das sagt gar nix aus :D

  • Receive über DLL

    • Samagon
    • 6. Februar 2012 um 15:16

    Habs bereits mit CreateThread versucht klappt nicht so ganz, oder habe es falsch genutzt, grml :cursing:

  • Receive über DLL

    • Samagon
    • 5. Februar 2012 um 20:09

    Hey leute war ja paar mal wegen injectet dll hier in C++, sofern ich die DLL so injecte wie in der funktion hier ist der prozess freezed. Vermute mal das NUR die schleife läuft sonst gar nichts, krieg das aber nicht hin, habt ihr einen Vorschlag?

    C
    // dllmain.cpp : Definiert den Einstiegspunkt für die DLL-Anwendung.
    #include "stdafx.h"
    //#include <iostream>
    //#include <fstream>
    //#include <string>
    //#include <windows.h>
    //#include <winsock2.h>
    
    
    //#pragma comment(lib,"ws2_32.lib")
    
    
    using namespace std;
    
    
    typedef int (WINAPI* realConnect )(SOCKET s, const struct sockaddr* name, int namelen );
    typedef int (WINAPI* realRecv)(SOCKET socket, const char* buffer, int length, int flags);
    typedef int (WINAPI* realSend)(SOCKET socket, const char* buffer, int length, int flags);
    
    
    realSend o_send;
    realRecv o_recv;
    realConnect o_connect;
    
    
    SOCKET Bot;
    
    
    SOCKET Server;
    SOCKET Client;
    WORD port;
    
    
    
    
    //int WINAPI my_connect( SOCKET s, const struct sockaddr* name, int namelen)
    //{
    //	WORD port = ntohs((*(WORD*)name->sa_data));
    //	sockaddr_in *sockaddr = (sockaddr_in*)name;
    //	sockaddr->sin_port = htons(16000);
    //	if ( port != 80 )
    //	{
    //	sockaddr->sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
    //	}
    //	return o_connect(s,name,namelen);
    //}
    
    
    int WINAPI my_connect( SOCKET s, const struct sockaddr* name, int namelen)
    {
    	port = ntohs((*(WORD*)name->sa_data));
    	/*sockaddr_in *sockaddr = (sockaddr_in*)name;*/
    	//sockaddr->sin_port = htons(16000);
    	//if ( port != 80 )
    	//{
    	//sockaddr->sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
    	//}
    	return o_connect(s,name,namelen);
    }
    
    
    int WINAPI my_send(SOCKET socket, char* buffer, int length, int flags) 
    {
    	if ( port != 80 )
    	{
    	int PacketLenght = *(WORD*)buffer;
    	buffer[-1] = 2;
    	o_send(Bot, buffer-1, PacketLenght+1, 0);
    	}
    	Server = socket;
    	return o_send(Server, buffer, length, flags);
    }
    
    
    int WINAPI my_recv(SOCKET socket, char* buffer, int length, int flags) 
    {
    	if ( port != 80 )
    	{
    	int PacketLenght = *(WORD*)buffer;
    	buffer[-1] = 1;
    	o_send(Bot, buffer-1, PacketLenght+1, 0);
    	}
    	Client = socket;
    	return o_recv(Client, buffer, length, flags);
    }
     void Receiving()
     {
    	 		//Socketpart
    		WSADATA wsa;
    		WSAStartup(MAKEWORD(2,2), &wsa);
    
    
    		Bot=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
    		SOCKADDR_IN addr;
    		memset(&addr,0,sizeof(SOCKADDR_IN)); 
            addr.sin_family=AF_INET;
            addr.sin_port=htons(16000);
            addr.sin_addr.s_addr=inet_addr("127.0.0.1");
    
    
    		long status;
    		status=connect(Bot,(SOCKADDR*)(&addr),sizeof(addr));
    		if (status==SOCKET_ERROR)
    		{
    			MessageBox(NULL, TEXT("Bot dont exists"), TEXT("Error"), MB_OK);
    			exit(0);
    		}
    	char* buffer = 0;
    	int lenght = 9999;
    	int bytes = -1;
    	while (bytes = -1)
    	{
    		bytes = recv (Bot, buffer, lenght, 0);
    	}
     }
    
    
    BOOL APIENTRY DllMain( HMODULE hModule,
                           DWORD  ul_reason_for_call,
                           LPVOID lpReserved )
    {
    	switch (ul_reason_for_call)
    	{
    	case DLL_PROCESS_ATTACH:
    		/////////////////////////////////////////////////////
    		HMODULE hWS32 = LoadLibraryA( "ws2_32.dll" );
    		FARPROC pConnect = GetProcAddress(hWS32,"connect");
    		FARPROC pSend = GetProcAddress(hWS32,"send");
    		FARPROC pRecv = GetProcAddress(hWS32,"recv");
    		DetourCreate((LPVOID)pConnect,my_connect,5);
    		__asm mov [ o_connect ], eax;
    		DetourCreate((LPVOID)pSend,my_send,5);
    		__asm mov [ o_send ], eax;
    		DetourCreate((LPVOID)pRecv,my_recv,5);
    		__asm mov [ o_recv ], eax;
    
    
    		Receiving();
    		break;
    	}
    	return true;
    }
    Alles anzeigen
  • Read von char* buffer ein Word

    • Samagon
    • 26. Januar 2012 um 20:23

    Edit: sorry klappt ;)

  • Read von char* buffer ein Word

    • Samagon
    • 26. Januar 2012 um 19:51

    Hey ich habe hier den "char* buffer" von einer hooked send funktion und möchte davon das erste Word lesen welche mir die Packetlänge ausgibt.

    Mache ich das mit fstream? Hat jemand evt. ein beispiel?

  • Detouren von WSAsend und WSArecv

    • Samagon
    • 20. Januar 2012 um 18:27

    Ich habe mich letzte Zeit ein wenig mit Detour beschäftigt und zugleich mit C++ da ich darin keine erfahrung habe. Habe jetzt vor WSAsend und WSArecv zu hooken und bin soweit gekommen wie jetzt in dem Source nur leider kriege ich keine MessageBox, wo liegt der fehler:

    Spoiler anzeigen
    C
    // dllmain.cpp : Definiert den Einstiegspunkt für die DLL-Anwendung.
    #include "stdafx.h"
    #include <iostream>
    #include <fstream>
    #include <string>
    
    
    typedef int (WINAPI* t_WSARecv)(SOCKET,LPWSABUF,DWORD,LPDWORD,LPDWORD,LPWSAOVERLAPPED,LPWSAOVERLAPPED_COMPLETION_ROUTINE);
    typedef int (WINAPI* t_WSASend)(SOCKET,LPWSABUF,DWORD,LPDWORD,DWORD,LPWSAOVERLAPPED,LPWSAOVERLAPPED_COMPLETION_ROUTINE );
    
    
    t_WSASend o_WSASend;
    t_WSARecv o_WSARecv;
    
    
    int WINAPI hook_WSARecv(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine)
    {
    	MessageBox(NULL, NULL, NULL, MB_OK);
    	return o_WSARecv(s,lpBuffers,dwBufferCount,lpNumberOfBytesRecvd,lpFlags,lpOverlapped,lpCompletionRoutine);
    }
    
    
    int WINAPI hook_WSASend(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine)
    {
    			MessageBox(NULL, NULL, NULL, MB_OK);
    	return o_WSASend(s,lpBuffers,dwBufferCount,lpNumberOfBytesSent,dwFlags,lpOverlapped,lpCompletionRoutine);
    }
    
    
    
    
    BOOL APIENTRY DllMain( HMODULE hModule,
                           DWORD  ul_reason_for_call,
                           LPVOID lpReserved )
    
    {
    	switch (ul_reason_for_call)
    	{
    	case DLL_PROCESS_ATTACH:
    		HMODULE hWS32 = LoadLibraryA( "ws2_32.dll" );
    		FARPROC pwsasend = GetProcAddress(hWS32,"wsasend");
    		FARPROC pwsarecv = GetProcAddress(hWS32,"wsarecv");
    		DetourCreate((LPVOID)pwsasend,hook_WSASend,5);
    		DetourCreate((LPVOID)pwsarecv,hook_WSARecv,5);
    		break;
    	}
    	return true;
    }
    Alles anzeigen
  • Visual Studio 2010 C# Debug defekt

    • Samagon
    • 14. Januar 2012 um 15:46

    Seit gestern etwa funktioniert mein Debug nicht richtig um das projekt aktuell zu debuggen muss ich es immer bereinigen und neu erstelen. Sofern ich es debugge wird es immer vom letzten erstellten Projekt gedebuggt.


    Wo ist das problem ich kann nichts finden?

  • C# Hexstring jedes einzelne Byte im Hexstring in Ascii umwandeln

    • Samagon
    • 7. Januar 2012 um 14:12

    Ich habe einen HexString z.b. den hier:
    "02 60 F4 BE 07 07 4C 75 63 65 6D 6F 6E 00 00 00 02 58 CE B9 07 08 4C 65 76 69 61 6D 6F 6E 00 00 00 00 09 62 72 61 74 61 6E 39 39 30 00 0F 1A"

    Möchte jedes EINZELNE Byte im Hexstring in einen AsciiString wandeln, bissher habe ich nur den gesamten Hexstring umwandeln können. Irgendwie klappt das nicht so ganz hat jemand einen Tip für mich?

  • Firefox instabil geworden

    • Samagon
    • 7. Januar 2012 um 13:23

    Gleiches problem, wenn ich in ein CHatt gehe der mit java betrieben ist stürzt der mir ab und cookies hat gehlfen jedoch nur für 10 minuten

  • Fernseher leicht defekt

    • Samagon
    • 6. Januar 2012 um 22:05

    Fürn anfang das issen Röhrenbildschirm etwa 5 jahre alt , daneben ist ne wii dadrunter receiver und dvd player ich schau mal bisschen nach

  • Fernseher leicht defekt

    • Samagon
    • 6. Januar 2012 um 18:39

    Mein Fernseher ist seit ein paar Tagen ein wenig kaputt, das Bild hat seine Farbe drumherum sich verändert erst rot und dieses rot mischt sich mit den Farben und seit eben grün, woran könnte das liegen kennt sich jemand aus?

  • Digimon Masters Online .hf & .pf File Extractor

    • Samagon
    • 6. Januar 2012 um 15:29

    hast du die source noch? da sind wohl mehr dateien versteckt ;)

  • Gewerbe für App-Verkauf?

    • Samagon
    • 5. Januar 2012 um 21:47

    Ich vermute mal du brauchst ein Gewerbeschein, google mal danach, kostet einmalig je nach Bundesland in etwa 50 euro - + ein paar euro

  • Partner bei Bot für DMO

    • Samagon
    • 30. Dezember 2011 um 20:53

    Wie ihr vielleicht durch ein paar Threads gemerkt habe interessiere ich mich dafür Hacks/Bots etc. für andere Spiele ausser Silkroad zu schreiben. Da bei Digimon Masters Online ein Hackshield ist wollte ich erst ein anderes Game finden, fand aber zur Zeit keins was für mich Persönlich so interessant ist wie DMO von Joymax.

    Einige sachen habe ich schon mit denen man etwas anfangen könnte z.b.:
    -RedirectIP über ASM
    -Networkcode sowohl Client als auch Server Connection

    Für den anfang ein bisschen wenig war bissher noch net so motiviert.

    Informationen sind z.b.:
    -Das Game verfügt über Login und World Server wie bei Silkroad Online
    -Die Packete sind alle unverschlüsselt also kann man sofort damit arbeiten
    -Das Packet ist so aufgebaut: Size vom gesamten Packet als Word + Opcode als Word + Packetdata als rest
    -Jemand hat bei Ragezone versucht einen Emulator in C# geschrieben also zumindest einiges
    Hier link zur SVN = https://github.com/Comfy-Mittens/Digital-World

    Probleme:
    -Hackshield ist das größte problem, zum Bypassen(wie ich das jetzt schon gemacht habe damit ich 20 minuten Ingame testen kann) gehört noch das Emulieren dazu
    -Packet Parsen, da muss man ein wenig Zeit investieren

    Wer interessiert ist bitte melden

  • Wohngeld

    • Samagon
    • 30. Dezember 2011 um 20:14

    Mal ne Frage nebenbei, weiß vllt jemand. Hat man Recht auf Wohngeld zu zweit in einer 58 m² Wohnung die 430 Euro warm ist, wenn man 1100+180 Euro Geld zu verfügung hat, dazu muss ich sagen Auto+ 30km zur Arbeit von mir kommt auch noch dazu.

  • MMOPRG hacks schreiben welches?

    • Samagon
    • 26. Dezember 2011 um 20:23

    Hallo leute, da ich von SRO durch die Private Server und jetzt zuletzt durch SRO-R total enttäuscht bin habe auf Digimon Masters gewechselt, das spiel hat mir sehr gefallen und ich dachte mir das ich paar Hacks (Range Patch, Zoomhack, Multiclient) schreibe, leider ist mir das Hackshield im weg und kriege das nicht hin, kriegt keiner hin. Das Hackshield NOPEN geht, aber nach 5 mins gibts nen disconnect.


    Nun da ich jetzt lust habe paar Hacks zu machen würde ich gerne auf ein anderes Spiel umsteigen. Hat jemand nen Vorschlag welches spiel, sollte ohne Hackshield, Xtrap oder sonst was sein...

  1. Datenschutzerklärung
  2. Impressum