Вопрос Loader Protect

I Want to Die in New Orleans
Участник
Статус
Оффлайн
Регистрация
10 Окт 2020
Сообщения
516
Реакции[?]
496
Поинты[?]
85K
Начинающий
Статус
Оффлайн
Регистрация
24 Июн 2021
Сообщения
220
Реакции[?]
10
Поинты[?]
0
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,596
Реакции[?]
605
Поинты[?]
46K
Начинающий
Статус
Оффлайн
Регистрация
20 Май 2023
Сообщения
154
Реакции[?]
3
Поинты[?]
6K
C++:
using namespace std;


bool IsDebugging( )
{
    if ( IsDebuggerPresent( ) || IsDebuggerPresentPEB( ) || CheckRemoteDebuggerPresentAPI( )
        || NtQueryInformationProcess_ProcessDebugPort( ) || NtQueryInformationProcess_ProcessDebugFlags( ) || NtQueryInformationProcess_ProcessDebugObject( )
        || NtSetInformationThread_ThreadHideFromDebugger( ) || CloseHandle_InvalideHandle( ) || UnhandledExcepFilterTest( )
        || HardwareBreakpoints( ) || SoftwareBreakpoints( ) || Interrupt_3( ) || MemoryBreakpoints_PageGuard( )
        || NtQueryObject_ObjectTypeInformation( ) || SetHandleInformatiom_ProtectedHandle( ) )
        return true;

    return false;
}

bool IsAnalysing( )
{
    auto m_fnIsRemoteSession = [ ] ( ) -> bool
    {
        const int m_iSessionMetrics = GetSystemMetrics( SM_REMOTESESSION );
        return m_iSessionMetrics != 0;
    };

    string m_szProcesses[ ] =
    {
        _xor_("ollydbg.exe"),            // OllyDebug debugger
        _xor_("ProcessHacker.exe"),        // Process Hacker
        _xor_("tcpview.exe"),            // Part of Sysinternals Suite
        _xor_("autoruns.exe"),            // Part of Sysinternals Suite
        _xor_("autorunsc.exe"),            // Part of Sysinternals Suite
        _xor_("filemon.exe"),            // Part of Sysinternals Suite
        _xor_("procmon.exe"),            // Part of Sysinternals Suite
        _xor_("regmon.exe"),            // Part of Sysinternals Suite
        _xor_("procexp.exe"),            // Part of Sysinternals Suite
        _xor_("idaq.exe"),                // IDA Pro Interactive Disassembler
        _xor_("ida.exe"),                // IDA Pro Interactive Dissasembler
        _xor_( "idaq64.exe"),            // IDA Pro Interactive Disassembler
        _xor_("ImmunityDebugger.exe"),    // ImmunityDebugger
        _xor_("Wireshark.exe"),            // Wireshark packet sniffer
        _xor_("dumpcap.exe"),            // Network traffic dump tool
        _xor_("HookExplorer.exe"),        // Find various types of runtime hooks
        _xor_("ImportREC.exe"),            // Import Reconstructor
        _xor_("PETools.exe"),            // PE Tool
        _xor_("LordPE.exe"),            // LordPE
        _xor_("dumpcap.exe"),            // Network traffic dump tool
        _xor_("SysInspector.exe"),        // ESET SysInspector
        _xor_("proc_analyzer.exe"),        // Part of SysAnalyzer iDefense
        _xor_("sysAnalyzer.exe"),        // Part of SysAnalyzer iDefense
        _xor_("sniff_hit.exe"),            // Part of SysAnalyzer iDefense
        _xor_("windbg.exe"),            // Microsoft WinDbg
        _xor_("joeboxcontrol.exe"),        // Part of Joe Sandbox
        _xor_("joeboxserver.exe"),        // Part of Joe Sandbox
        _xor_("x32dbg.exe"),            // x32dbg
        _xor_("x64dbg.exe"),            // x64dbg
        _xor_("x96dbg.exe"),                // x64dbg part
        _xor_("ida64.exe"),
        _xor_("httpdebugger.exe"),
        _xor_("cheatengine-x86_64.exe")
    };
    utils util;
    WORD m_iLength = sizeof( m_szProcesses ) / sizeof( m_szProcesses[ 0 ] );
    for ( int i = 0; i < m_iLength; i++ )
    {
        if (util.GetProcIDFromName( m_szProcesses[ i ].c_str( ) ) )
            return true;
    }

    return ( m_fnIsRemoteSession());
}

void HandleUserActivity( )
{
    if ( IsDebugging( ) || IsAnalysing( ) )
    {
        ErasePEHeaderFromMemory( );
        HANDLE m_hProcess = LI_FN( OpenProcess )( PROCESS_QUERY_INFORMATION | PROCESS_TERMINATE, 0, GetCurrentProcessId( ) );
        TerminateProcess( m_hProcess, 0 );
    }
}

bool isflex() {
    if (IsDebugging() || IsAnalysing()) {
        return true;
    }
    return false;
}
 
Разработчик
Статус
Оффлайн
Регистрация
1 Сен 2018
Сообщения
1,598
Реакции[?]
880
Поинты[?]
114K
всем привет, я пробую сделать свой антидебагер и крч я хочу сделать чтобы детектило окно "x64dbg" потомучто если сделать детект процесса то при переименовке дебагера он не будет делать детект. при запуске дебагера всегда в окне текст менеется и мне не получается сделать чтобы он его детектил, кто сможет помочь = 50 руб:)

если чо дс - .x64dbg

тут есть всё что тебя интересует
 
Начинающий
Статус
Оффлайн
Регистрация
20 Май 2023
Сообщения
154
Реакции[?]
3
Поинты[?]
6K
C++:
using namespace std;


bool IsDebugging( )
{
    if ( IsDebuggerPresent( ) || IsDebuggerPresentPEB( ) || CheckRemoteDebuggerPresentAPI( )
        || NtQueryInformationProcess_ProcessDebugPort( ) || NtQueryInformationProcess_ProcessDebugFlags( ) || NtQueryInformationProcess_ProcessDebugObject( )
        || NtSetInformationThread_ThreadHideFromDebugger( ) || CloseHandle_InvalideHandle( ) || UnhandledExcepFilterTest( )
        || HardwareBreakpoints( ) || SoftwareBreakpoints( ) || Interrupt_3( ) || MemoryBreakpoints_PageGuard( )
        || NtQueryObject_ObjectTypeInformation( ) || SetHandleInformatiom_ProtectedHandle( ) )
        return true;

    return false;
}

bool IsAnalysing( )
{
    auto m_fnIsRemoteSession = [ ] ( ) -> bool
    {
        const int m_iSessionMetrics = GetSystemMetrics( SM_REMOTESESSION );
        return m_iSessionMetrics != 0;
    };

    string m_szProcesses[ ] =
    {
        _xor_("ollydbg.exe"),            // OllyDebug debugger
        _xor_("ProcessHacker.exe"),        // Process Hacker
        _xor_("tcpview.exe"),            // Part of Sysinternals Suite
        _xor_("autoruns.exe"),            // Part of Sysinternals Suite
        _xor_("autorunsc.exe"),            // Part of Sysinternals Suite
        _xor_("filemon.exe"),            // Part of Sysinternals Suite
        _xor_("procmon.exe"),            // Part of Sysinternals Suite
        _xor_("regmon.exe"),            // Part of Sysinternals Suite
        _xor_("procexp.exe"),            // Part of Sysinternals Suite
        _xor_("idaq.exe"),                // IDA Pro Interactive Disassembler
        _xor_("ida.exe"),                // IDA Pro Interactive Dissasembler
        _xor_( "idaq64.exe"),            // IDA Pro Interactive Disassembler
        _xor_("ImmunityDebugger.exe"),    // ImmunityDebugger
        _xor_("Wireshark.exe"),            // Wireshark packet sniffer
        _xor_("dumpcap.exe"),            // Network traffic dump tool
        _xor_("HookExplorer.exe"),        // Find various types of runtime hooks
        _xor_("ImportREC.exe"),            // Import Reconstructor
        _xor_("PETools.exe"),            // PE Tool
        _xor_("LordPE.exe"),            // LordPE
        _xor_("dumpcap.exe"),            // Network traffic dump tool
        _xor_("SysInspector.exe"),        // ESET SysInspector
        _xor_("proc_analyzer.exe"),        // Part of SysAnalyzer iDefense
        _xor_("sysAnalyzer.exe"),        // Part of SysAnalyzer iDefense
        _xor_("sniff_hit.exe"),            // Part of SysAnalyzer iDefense
        _xor_("windbg.exe"),            // Microsoft WinDbg
        _xor_("joeboxcontrol.exe"),        // Part of Joe Sandbox
        _xor_("joeboxserver.exe"),        // Part of Joe Sandbox
        _xor_("x32dbg.exe"),            // x32dbg
        _xor_("x64dbg.exe"),            // x64dbg
        _xor_("x96dbg.exe"),                // x64dbg part
        _xor_("ida64.exe"),
        _xor_("httpdebugger.exe"),
        _xor_("cheatengine-x86_64.exe")
    };
    utils util;
    WORD m_iLength = sizeof( m_szProcesses ) / sizeof( m_szProcesses[ 0 ] );
    for ( int i = 0; i < m_iLength; i++ )
    {
        if (util.GetProcIDFromName( m_szProcesses[ i ].c_str( ) ) )
            return true;
    }

    return ( m_fnIsRemoteSession());
}

void HandleUserActivity( )
{
    if ( IsDebugging( ) || IsAnalysing( ) )
    {
        ErasePEHeaderFromMemory( );
        HANDLE m_hProcess = LI_FN( OpenProcess )( PROCESS_QUERY_INFORMATION | PROCESS_TERMINATE, 0, GetCurrentProcessId( ) );
        TerminateProcess( m_hProcess, 0 );
    }
}

bool isflex() {
    if (IsDebugging() || IsAnalysing()) {
        return true;
    }
    return false;

use:


}
C++:
int main(){

    if (isflex()) {
        MessageBox(NULL, _xor_("Обнаружены запрещенные программы! Закройте их перед запуском лоадера.").c_str(), _xor_("Error").c_str(), MB_ICONERROR);
    }
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,596
Реакции[?]
605
Поинты[?]
46K
Сверху Снизу