- 博客(26)
- 资源 (3)
- 收藏
- 关注
原创 ISA2006安装和部署基础(虚拟机非域环境)
ISA Server 2006是目前企业中应用最多的ISA版本,该版本增强了对OWA发布和多个Web站点发布的支持,并新增了对SharePoint Portal Server发布的支持;新增了单点登录特性,支持针对通过某个Web侦听器所发布的所有 Web 服务的单点登录;新增了服务器场功能,支持通过多个Web服务器组成服务器群集以实现负载均衡,并且此特性无需Windows的NLB或群集支持;强化了DDOS防御功能,极大的增强了对于DDOS攻击的防范能力。
2014-05-31 16:03:33 1599
原创 c/c++ 屏幕截图
说明:该程序以隐藏方式运行,程序初始化时注册了两个热键Ctrl+Alt+a和Ctrl+Alt+A,当按下其中之一热键时,会让用户选择截屏的区域。用户区域选择完后,可以有三种选择:使用Ctrl+c快捷键保存到剪切板使用Ctrl+s快捷键弹出保存bmp文件对话框使用Esc快捷键取消截屏当用户操作完后,程序并不会退出,用户可以反复的使用热键进行截屏,知道用户手动结束程序。
2014-05-28 23:28:08 1742
原创 c/c++ 实现ping程序
#ifndef _PING_H_#define _PING_H#include #include #include #pragma comment(lib, "ws2_32.lib")#define ICMP_SIZE 32//ICMP header structuretypedef struct _ICMP_HDR{ BYTE type; BYTE code; U
2014-05-28 17:08:00 1598
转载 C++ 注册表操作总结
1、RegCloseKey() 原型:RegCloseKey(HKEY hKey) 解释:关闭指定的注册表键,释放句柄。当对一个或多个键或值操作完成以后,需要关闭其键来进行保存操作结果,关闭一个键后,句柄变为非法,此时应释放句柄。 2、RegCreateKeyEx() 原型:LONG RegCreateKeyEx( HKEY hKey, LPCTSTR lp
2014-05-26 20:55:31 555
原创 打印文件夹中所有dll输出表中函数名称
今天逆向破解firefox浏览器中保存的账号及密码,因为firefox对账号的信息不断的提高安全性,所以之前破解中需要用到的一个导出函数不知被封装到那个dll中了,但firefox安装目录下又有许多的dll,一个一个的使用loadPe工具去查找太麻烦了,于是就编写了一个小程序去遍历文件夹下所有的dll的导出表中的函数名称并打印出来。
2014-05-24 22:07:22 1354
原创 SDK实现真彩工具栏
如果是采用MFC工程的话,要实现真彩工具栏是一件简单的事,网上都提供了封装好的类来实现,例如:TrueColorToolBar。可是采用SDK实现真彩工具栏就需要自己去实现,在网络上搜索了很多关于这方面的资料,都没有称心如意的,最后自己一步一步的使用SDK函数来实现这一功能,代码如下:void CreateToolBar(const HWND hWndParent){ RGBTRIPLE
2014-05-23 15:49:39 835
转载 将asp.net的后台cs代码移动到页面上
在做项目时,我们一般会将aspx文件和其后台cs文件分开,然后将后台的cs文件编译成dll发布到生产环境中。如果我们的项目规定是每周1发布一次,现在发布后第二天客户在其中某个页面发现一个Bug导致业务无法正常处理,这个时候我们的项目正在添加新的功能,编码还没有完成,不可能为了这一个页面而将这没有完成的整个项目重新发布到生产环境中,这个时候怎么办拉? 我们知道aspx运行有两种模式,一种是编译运
2014-05-23 15:40:14 944
原创 http隧道、https、SSL层、http代理、在线代理、socks代理区别
以前听到这几个名词时,总是搞混淆,今天花点时间来记录这几个名词的大概
2014-05-23 15:11:48 7132
原创 Writing shellcode in C++
大多数的shellcode是用汇编语言编写。 但是,它是可以写的shellcode在纯C++不使用汇编语言。下面的程序的shellcode注入到其他进程。 注入的shellcode通过PEB定位KERNEL32。 一旦KERNEL32的基址被发现,将shellcode解析kernel32中的导出表,并计算各出口名称的哈希值。 shellcode的提示音功能的散列进行比较的结果散
2014-05-23 14:59:23 923
转载 TCP/IP SOCKET HTTP
网络七层由下往上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其中物理层、数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象;传输层、会话层、表示层和应用层则被称作主机层,是用户所面向和关心的内容。 http协议 对应于应用层 tcp协议 对应于传输层 ip协议 对应于网络层 三者本质上没有可
2014-05-23 14:44:41 762
原创 FTP的工作原理
FTP是TCP/IP的一种具体应用,它工作在O S I模型的第七层, T C P模型的第四层上,即应用层,使用T C P传输而不是U D P,这样FTP客户在和服务器建立连接前就要经过一个被广为熟知的“三次握手”的过程,它带来的意义在于客户与服务器之间的连接是可靠的,而且是面向连接,为数据的传输提供了可靠的保证。下面,让我们来看看,一个FTP客户在和服务器连接是怎么样的一个过程(以标准的FTP
2014-05-23 14:37:25 1300
转载 C++中string相关函数
C++ Strings(字符串) --------------------------------------------------------------------------------构造函数(Constructors)语法: string();string( size_type length, char ch );string( const char *st
2014-05-23 14:35:41 695
转载 给C++程序加图标
//工具只需要一个VC++就可以了1.选好ico图标,我就选了这个2.打开VC++3.点“插入”→“资源”→“引入”→选择你那个ICO图标4.接下来就可以保存了,保存后就会自动生成一个.rc文件小知识:.rc文件是Visual C++的资源描述文件。5.点“工程”→“增加到工程”→“文件”→选择生成好的那个Script2.rc文件
2014-05-23 14:34:01 1910
原创 TCP/IP中32位IP地址与字符串转化
在网络上面我们用的IP都是数字加点(192.168.0.1)构成的, 而在struct in_addr结构中用的是32位的IP,我们上面那个32位IP(C0A80001)是的192.168.0.1 为了转换我们可以使用下面两个函数 int inet_aton(const char *cp,struct in_addr *inp) char *inet_ntoa(struct in_ad
2014-05-23 14:32:19 1101
原创 增加windows最大TCP连接随机端口数,避免10048
系统默认TCP随机端口范围为:1024-5000本错误密切相关的两个windows的注册表项:TcpTimedWaitDelay和MaxUserPort的值.TcpTimedWaitDelay 确定 TCP/IP 可释放已关闭连接并重用其资源前, 必须经过的时间.关闭和释放之间的此时间间隔通称 TIME_WAIT 状态或两倍最大段生命周期(2MSL)状态. 此时间期间,重新打开到客户机
2014-05-23 14:26:41 2512
转载 64位inline api hook
说起Api hook朋友们都不陌生,说白了也就是运用WINDOWS系统钩子,捕获程序对系统API的调用,从面改变API默认的处理方式,以达到某种特殊的目的。而inline api hook在32位系统中通常是先保存API函数入口处的5个字节,然后改变API函数入口处的5个字节为一个JMP xx xx xx xx跳转指令,xx xx xx xx处是我们自己的处理函数的偏移地址。在我们的处理函数中,进
2014-05-23 14:25:20 1014
转载 傀儡进程内存Dump
简单的说是指通过给CreateProcess传递一个CREATE_SUSPENDED参数可以使得被创建的子进程处于挂起状态,此时EXE的映像会被加载到进程空间中,但是并不会立即被执行,除非调用ResumeThread。在ResumeThread之前,通过GetThreadContext获取主线程的上下文以取得PEB等,调用ZwUnmapViewOfSection/NtUnmapViewOfSect
2014-05-23 14:19:40 1230
转载 动态加载并执行Win32可执行程序(下)
#include #include #include #include struct PE_Header{ unsigned long signature; unsigned short machine; unsigned short numSections; unsigned long timeDateStamp; unsigned lon
2014-05-23 14:17:13 681
转载 动态加载并执行Win32可执行程序(上)
本文所贴出的PoC代码将告诉你如何通过CreateProcess创建一个傀儡进程(称之为可执行程序A),并把dwCreationFlags设置为CREATE_SUSPENDED,然后把另一个可执行程序(称之为可执行程序B)的内容加载到所创建的进程空间中,最终借用傀儡进程(A)的外壳来执行可执行程序B的内容。同时这段代码也会告诉你如何手工对Win32可执行程序进行重定位处理,以及如何从进程空间中取消
2014-05-23 14:14:52 1112
原创 win32程序启用控制台(控制台文件名:conout$,conin$,conerr$)
做win32窗口程序的时候,有时还是希望在控制台下输入输出一些信息。特别是VC的TRACE()宏虽然不错,但是输出在VC的debug窗口下。1。最原始的分配控制台,获得句柄,再输出AllocConsole() ; HANDLE hd = GetStdHandle(STD_OUTPUT_HANDLE) ; WriteConsole(hd , "hello hplonl
2014-05-23 14:11:50 823
原创 制作带MFC界面的MFC DLL
把MFC界面封装到动态库中。一:工程创建步骤1.创建MFC DLL工程,选择 “在共享 DLL 中使用 MFC”。2.运行时库选择:c/c++-->代码生成-->运行库 “多线程调试 DLL (/MDd)”。二:定义导出界面基类定义导出界面接口类,待导出界面需要继承该接口类,并实现该接口定义的虚函数。如下:class IHpDllWin :publ
2014-05-23 14:07:22 978
原创 SOCKS5协议的原理和应用
首先解释一下为什么它被称之为SOCKS。其实该协议设计之初是为了让有权限的用户可以穿过过防火墙的限制,使得高权限用户可以访问一般用户不能访问的外部资源。当时设计者考虑到几乎所有使用TCP/IP通信的应用软件都使用socket(套接字,实际上是一组应用程序接口)完成底层的数据通信。为了方便软件开发者使用该协议,协议设计者就刻意对应了几组socket编程最经典的操作,并且将协议定名为SOCKS。
2014-05-23 14:02:08 974
原创 TCP打洞和UDP打洞的区别
为什么网上讲到的P2P打洞基本上都是基于UDP协议的打洞?难道TCP不可能打洞?还是TCP打洞难于实现? 假设现在有内网客户端A和内网客户端B,有公网服务端S。如果A和B想要进行UDP通信,则必须穿透双方的NAT路由。假设为NAT-A和NAT-B。 A发送数据包到公网S,B发送数据包到公网S,则S分别得到了A和B的公网IP, S也和A B 分别建立了会话,由S发到N
2014-05-23 14:00:46 641
转载 AfxOleInit()
CFileDialog类无故崩溃的解决及原因分析在最简单的MFC对话框应用程序里使用CFileDialog对象打开文件对话框。第一次打开都正常,每当第二次调出打开对话框后,只要鼠标在文件上晃动下就会崩溃,调试器断在shell32.dll模块里。显示Unhandled exception in test.exe (SHELL32.DLL): 0xC0000005 Access Voila
2014-05-23 13:58:08 1507
原创 进程与网络(TCP) GetExtendedTcpTable
// TcpPid.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include #include using namespace std;#pragma comment(lib, "iphlpapi.lib")#pragma co
2014-05-23 11:59:14 2323
C语言读取BMP图像数据
2014-07-31
c/c++ 屏幕截图
2014-05-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人