Skip to content

AntiRedDot and AntiBounce

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #191024
    Jiiix
    Member

    Dll part :

    function WindowProcRooms(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
    begin
     case Msg of
         (*
       WM_COMMAND:
         begin
           MessageBox(HWND_DESKTOP, 'COMMAND', 'Jiiix!', MB_OK);
           exit;
         end;
         *)
    
       WM_QUIT: //Keep the room window open after you bounced
        begin
          //MessageBox(HWND_DESKTOP, 'WM_QUIT', 'Jiiix!', MB_OK);
          exit;
        end;
     end;
     Result := CallWindowProc(OldWndProcRoom1, hWnd, Msg, wParam, lParam);
    end;

    Injection Part:

    exe loader to inject the Dll to the paltalk process

    program paltalk;
    {
    this is the paltalk loader
    to inject our DLL to paltalk Process on every startup of pal
    }
    
    uses
      Winapi.Windows,
      System.SysUtils,
      ShellAPI;
    
    //Var
    
    //add icon to our loader
    {$R 'conicon.res' 'conicon.rc'}
    
    
    {}
    function InjectDLL(const dwPID: DWORD; {$IFDEF UNICODE} DLLPath: PWideChar {$ELSE} DLLPath: PAnsiChar {$ENDIF} ): Integer;
    const
    Kernel32 = 'kernel32.dll';
    var
    dwThreadID: Cardinal;
    hProc, hThread, hKernel: THandle;
    BytesToWrite, BytesWritten: SIZE_T;
    pRemoteBuffer, pLoadLibrary: Pointer;
    begin
    hProc := OpenProcess(PROCESS_CREATE_THREAD or PROCESS_QUERY_INFORMATION or
    PROCESS_VM_OPERATION or PROCESS_VM_WRITE or PROCESS_VM_READ, False, dwPID);
    if hProc = 0 then
    exit(0);
    try
    BytesToWrite := SizeOf(WideChar) * (Length(DLLPath) + 1);
    pRemoteBuffer := VirtualAllocEx(hProc, nil, BytesToWrite, MEM_COMMIT,
    PAGE_READWRITE);
    if pRemoteBuffer = nil then
    exit(0);
    try
    if not WriteProcessMemory(hProc, pRemoteBuffer, DLLPath, BytesToWrite,
    BytesWritten) then
    exit(0);
    {$REGION 'Check for UNICODE'}
    {$IFDEF UNICODE}
    hKernel := GetModuleHandleW(Kernel32);
    pLoadLibrary := GetProcAddress(hKernel, 'LoadLibraryW');
    {$ELSE}
    hKernel := GetModuleHandleA(Kernel32);
    pLoadLibrary := GetProcAddress(hKernel, 'LoadLibraryA');
    {$ENDIF}
    {$ENDREGION}
    hThread := CreateRemoteThread(hProc, nil, 0, pLoadLibrary, pRemoteBuffer,
    0, dwThreadID);
    try
    WaitForSingleObject(hThread, INFINITE);
    finally
    CloseHandle(hThread);
    end;
    finally
    VirtualFreeEx(hProc, pRemoteBuffer, 0, MEM_RELEASE);
    end;
    finally
    CloseHandle(hProc);
    end;
    exit(1);
    end;
    
    
    var
      PPid: DWORD;
      Msg: TMsg;
      bRet: LongBool;
    begin
      try
        ShellExecute(0, 'OPEN', Pchar('paltalk..exe'), '', '', SW_SHOWNORMAL);
        Sleep(2000);
        if GetWindowThreadProcessId(FindWindow(nil,PChar('Paltalk Messenger')), @PPid) <> 0 then
        Begin
           if  InjectDLL(PPid, 'Hades.dll') <> 0 then
           Halt(4);
        end;
    
        //Native Console Message Loop:
        repeat
          bRet := GetMessage(Msg, 0, 0, 0);
    
          if Int32(bRet) = -1 then
          begin
            // Error
            Break;
          end
          else
          Begin
            TranslateMessage(Msg);
            DispatchMessage(Msg);
          end;
       until not bRet;
     except
        on E: Exception do
        begin
          Writeln(E.Classname, ': ', E.Message);
        end;
      end;
    end.
    

    still looking about how my room window receive the RedDot message

    any advice in here please

    #191037
    Winter
    Member

    What is means AntiRedDot or AntiBounce? Your code never works and you don’t patch anything from memory.

    #191036
    Jiiix
    Member

    What is means AntiRedDot or AntiBounce? Your code never works and you don’t patch anything from memory.

    did you try it yourself ?

    if you inject this dll to paltalk process you can block any WM_QUIT message !!!!

    no need to stealing program’s memory

        if GetWindowThreadProcessId(FindWindow(nil,PChar('Paltalk Messenger')), @PPid) <> 0 then
        Begin
           if  InjectDLL(PPid, 'Hades.dll') <> 0 then
           Halt(4);
        end;

    if you have a better idea please guide us to it

    #191035
    Winter
    Member

    Ok First ur code is messed up and some var is not correct.

    U try open Paltalk.exe + find PID then

    call InjectDLL(PPid, ‘Hades.dll’)

    what is ‘Hades.dll’ ???

    Hades.dll = DLLPath in ur function, then where is it?

    Yes, u can block some command of paltalk.exe but in ur code i dont see any thing like that.

    Anyway, u can block it and the sign red dot don’t show up in ur nick but the server still not allow ur type or activate the MIC.

    #191034
    Jiiix
    Member

    Hades.dll

    is the Dll part : in my first post

    i have block some of paltalk messages with this the messed up code.

    such as <span style=”color: #808080;”>WM_COMMAND and WM_QUIT</span>

    can you please point me about the var is not correct ?

    #191033
    Winter
    Member

    hi,

    Just copy & paste ur code to Delphi then u will see.

    U try to block WM_COMMAND & WM_QUIT in SendMessage API, But if I know Paltalk has alot WM_COMMAND in paltalk.exe but not only for reddot.

     

    Like I tell u it’s very easy to never see reddot in ur nick or the room never close when u get bounce, but u still disconnect from paltalk’ server. The action does not from ur computer it done by another to server.

     

    #191032
    Jiiix
    Member

    hi, Just copy & paste ur code to Delphi then u will see. U try to block WM_COMMAND & WM_QUIT in SendMessage API, But if I know Paltalk has alot WM_COMMAND in paltalk.exe but not only for reddot. Like I tell u it’s very easy to never see reddot in ur nick or the room never close when u get bounce, but u still disconnect from paltalk’ server. The action does not from ur computer it done by another to server.

     

    thanks winter

    i was think all the actions come from my client 🙂

    your point if i block all paltalk.exe messages in my PC for the red dot still i cant jump to the mic if someone red dot me ?

     

    #191031
    Winter
    Member

    I never try do something like that, my point just do what i need. Maybe u can do it .

    Make attention about UID for each nick, that is the key.

    #191030
    Jiiix
    Member

    I never try do something like that, my point just do what i need. Maybe u can do it . Make attention about UID for each nick, that is the key.

     

    Thanks again

    i will do my best to figure it out and will share it in here

    #191029
    ChiNa
    Administrator

    @Jiiix, My Brother. I dont think its a good IDEA to even ask  for help or involve other Developers into Creating a software that can cause Damage and also against Software TOS. Not onlyt that its strictly against ImFiles and our Software Policies. But its also directly breaking of Paltalk TOS.

    Anti-Reddot Rule Posted by Staff Anonymous: 

    Forum Rules:

    #191028
    Chike
    Member

    You need to install your window proc on each room that is oppened, this can be done with shell hook (WH_SHELL) for each room window that is created (HSHELL_WINDOWCREATED).

    You may prevent the room from closing but it will probably will not be functional anymore.

    #191027
    ChiNa
    Administrator

    @Chike, Can you still see the Topic Open? Because It was locked.

    But Now I insist that you Create an Anti Reddot Software 😀 I can see you are able to create one. Then why not go for it!

    #191026
    Chike
    Member

    I’m oblivious to locked topics 🙂

    I haven’t said it is possible to create an antireddot, the red dot on the client just reflects server status and that you canot change unless of course you are admin in that room.

    #191025
    Departure
    Member

    Intercepting the WM_QUIT message is only going to stop the window from closing, Paltalk can still disconnect you from the server…..

Viewing 14 posts - 1 through 14 (of 14 total)
  • You must be logged in to reply to this topic.