`
xzb237cc
  • 浏览: 9852 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

网络和黑客windows编程

 
阅读更多

网络和黑客windows编程
2011年04月18日
  第一节 了解Windows机制Windows 是一个“基于事件的,消息驱动的”操作系统。   在Windows下执行一个程序,只要用户进行了影响窗口的动作(如改变窗口大小或移动、单击鼠标等)该动作就会触发一个相应的“事件” 系统每次检测到一个事件时,就会给程序发送一个“消息”,从而使程序可以处理该事件。   每个Windows 应用程序都是基于事件和消息的,而且包含一个主事件循环,它不停地、反复地检测是否有用户事件发生。每次检测到一个 用户事件,程序就对该事件做出响应,处理完再等待下一个事件的发生。   Windows 下的应用程序不断地重复这一过程,直至用户终止程序,用代码来描述实际上也就是一个消息处理过程的while循环语句。   下面便简单介绍一下与 Windows 系统密切相关的几个基本概念:   1:窗口:这是我要说的第一个概念。窗口是Windows本身以及Windows 环境下的应用程序的基本界面单位,但是很多人都误以为只有具有 标题栏、状态栏、最大化、最小化按钮这样标准的方框才叫窗口。其实窗口的概念很广,例如按钮和对话框等也是窗口,只不过是一种特殊化窗口罢了。   从用户的角度看,窗口就是显示在屏幕上的一个矩形区域,其外观独立于应用程序,事实上它就是生成该窗口的应用程序与用户间的直观 接口;从应用程序的角度看,窗口是受其控制的一部分矩形屏幕区。应用程序生成并控制与窗口有关的一切内容,包括窗口的大小、风格、位 置以及窗口内显示的内容等。用户打开一个应用程序后,程序将创建一个窗口,并在那里默默地等待用户的要求。每当用户选择窗口中的选 项,程序即对此做出响应。   2:程序:通常说的程序都是指一个能让计算机识别的文件,接触得最多的便是.exe型的可执行文件.  3:进程:说到进程,学过《操作系统》的人都很清楚,所谓进程就是应用程序的执行实例(或称一个执行程序) 需要注意的是:进程是 程序动态的描述,而上面说到的程序是静态的描述,两者有本质的区别。举个例子,从网上 Down了一个瑞星杀毒软件到C盘但没有运行,那 个.exe 可执行文件叫做程序,它是一个二进制码的文件。一旦双击了exe文件图标运行程序,那个“正在运行着的瑞星杀毒”便称为进程,它 在双击的那一刻被系统创建,当你关机或者在任务栏的图标上单击鼠标右键选“退出”时,进程便消亡,彻底结束了生命。进程经历了由“创 建”到“消亡”的生命期,而程序自始至终存在于你的硬盘上,不管你的机器是否启动。   4:线程:线程是进程中的一个执行单元,同一个进程中的各个线程对应于一组CPU指令、一组CPU寄存器以及一堆栈。进程本来就具有动态 的含义,然而实质上是通过线程来执行体现的,从这个意义上说,Windows 中进程的动态性意义已经不是很明显了,只算是给程序所占的资源 划定一个范围而已,真正具有动态性意义的是线程。   5:消息:我们几乎做每一个动作都会产生一个消息,鼠标被移动会产生WM_MOUSEMOVE消息,鼠标左键被按下会产生WM_LBUTTONDOWN的消 息,鼠标右键按下便产生WM_RBUTTONDOWN消息等等。所有的这些都可以通过GetMessage,SendMessage等函数得到.   6:事件:如在程序运行的过程中改变窗口的大小或者移动窗口等,都会触发相应的“事件”。  7:句柄:单单一个“柄”字便可以解释它的意思了,我们天气热摇扇子的时候只要抓住扇柄便可以控制整个扇子的运动了,在程序中也 差不多是这个意思。通常一个句柄就可以传递我们所要做的事情。有经验的成员肯定清楚,编写程序总是要和各种句柄打交道的,句柄是 系统用来标识不同对象类型的工具,如窗口、菜单等,这些东西在系统中被视为不同类型的对象,用不同的句柄将他们区分开来。   C++ 教材中给句柄下的定义是:“在Win32里,句柄是指向一个无值型对象(void *)的指针,是一个4字节长的数据”。从结构 上看,句柄的确是一个指针,尽管它没有指向用于存储某个对象的内存位置,而实际上句柄指向的是一个包含了对该对象进行的引用的位置。 在编程时,只要抓住了对象的句柄就可以对该对象进行操作了.     8:API与SDK:API是英文 Application Programming Interface 的简称,意为“应用程序接口”,泛指系统为应用程序提供的一系列接 口函数。其实质是程序内的一套函数调用,在编程的时候可以直接调用,而不必知道其内部实现的过程,只知道它的原型和返回值就可以 了.   SDK是英文 Software Development Kit 的缩写,指“软件开发工具包”,在防火墙的设计中就经常涉及到SDK。 第二节 Win API编程简介 下面介绍一下WIN API. 我们需要自己编写一个工具时,必然会用到很多操作windows和控制windows的函数,这些函数就是windows API. API是Application Progamming Interface的缩写.就是说API是一系列已经定义的在windows内部的函数,是应用程序和系统之间的 桥梁,应用程序通过调用API来请求系统完成一系列的任务.窗口,菜单,文件操作等都是通过API实现的. WIN32API就是WINDOWS 32位平台的应用程序接口.现在可视化编程工具提供了大量控件,他们代替了API的功能.这些控件都是构建在WIN32 API之上的.是封装了的API函数集合.但是对于比较复杂和特殊功能(想我们的黑客编程)来说,就必须用API函数来实现.WIN API存放在动态链接库(DLL)中,在98系统中,有32位的GDI32.DLL,KERNEL32.DLL,16位的GDI.EXE,KRNL386.EXE.API就存放在这些 动态链接库中. 木马和后门其实就是使用了文件操作函数,这里做简要介绍: 删除文件:BOOL DeleteFile(LPCTSH lpFileName) 复制文件:BOOL CopyFile() 移动文件:BOOL MoveFile()等等 具体的API可以上网自己去查看,有很多介绍API的书籍. 第二节 Win API编程简介 下面介绍一下WIN API. 我们需要自己编写一个工具时,必然会用到很多操作windows和控制windows的函数,这些函数就是windows API. API是Application Progamming Interface的缩写.就是说API是一系列已经定义的在windows内部的函数,是应用程序和系统之间的 桥梁,应用程序通过调用API来请求系统完成一系列的任务.窗口,菜单,文件操作等都是通过API实现的. WIN32 API就是WINDOWS 32位平台的应用程序接口.现在可视化编程工具提供了大量控件,他们代替了API的功能.这些控件都是构建 在WIN32 API之上的.是封装了的API函数集合.但是对于比较复杂和特殊功能(想我们的黑客编程)来说,就必须用API函数来实现. WIN API存放在动态链接库(DLL)中,在98系统中,有32位的GDI32.DLL,KERNEL32.DLL,16位的GDI.EXE,KRNL386.EXE.API就存放在这些 动态链接库中. 木马和后门其实就是使用了文件操作函数,这里做简要介绍: 删除文件:BOOL DeleteFile(LPCTSH lpFileName) 复制文件:BOOL CopyFile() 移动文件:BOOL MoveFile()等等 具体的API可以上网自己去查看,有很多介绍API的书籍. 第二节 Win API编程简介 下面介绍一下WIN API. 我们需要自己编写一个工具时,必然会用到很多操作windows和控制windows的函数,这些函数就是windows API. API是Application Progamming Interface的缩写.就是说API是一系列已经定义的在windows内部的函数,是应用程序和系统之间的 桥梁,应用程序通过调用API来请求系统完成一系列的任务.窗口,菜单,文件操作等都是通过API实现的. WIN32 API就是WINDOWS 32位平台的应用程序接口.现在可视化编程工具提供了大量控件,他们代替了API的功能.这些控件都是构建 在WIN32 API之上的.是封装了的API函数集合.但是对于比较复杂和特殊功能(想我们的黑客编程)来说,就必须用API函数来实现. WIN API存放在动态链接库(DLL)中,在98系统中,有32位的GDI32.DLL,KERNEL32.DLL,16位的GDI.EXE,KRNL386.EXE.API就存放在这些 动态链接库中. 木马和后门其实就是使用了文件操作函数,这里做简要介绍:删除文件:BOOL DeleteFile(LPCTSH lpFileName) 复制文件:BOOL CopyFile() 移动文件:BOOL MoveFile()等等 具体的API可以上网自己去查看,有很多介绍API的书籍. 第三节 Windows 网络协议 首先介绍一下网络协议:网络协议是网络上所有设备之间通信规则的集合,他定义了通信时信息必须采用的格式和这些格式的意义.大多数 网络协议都采用分层体系结,每一层都建立在他的下层之上,向他的上一层提供服务,而把如何实现这一服务的细节对上层加以屏蔽.一台设备上的第N层与另一台设备上的第N层进行通信的规则就是第N曾协议.在网络上的个层之间中存在着许多协议,接受方和发送方同层的协议必须一致, 否则,一方就无法识别另一方发出的信息.网络协议使网络上的设备各种设备能相互交换信息. 常用的协议有:TCP/IP协议,IPX/SPX歇息等等.在局域网中常用的IPX/SPX协议.而访问INTERNET,就必须添加TCP/IP协议. TCP/IP协议是传输控制协议/互联网络协议.他规范了网络上所有设备的通信,尤其是一个主机与另一个主机之间的数据往来格式以及
分享到:
评论

相关推荐

    黑客编程基础

    黑客编程基础 详细介绍windows系统下网络安全技术及其编程,以及网络的攻防技术。

    Visual C++黑客编程揭秘与防范.pdf

    中级网络安全爱好者学习网络安全知识时使用 同时也可作为程序员和网络高级安全工程师的参考用书 ">本书全面介绍了在visual c++环境中 使用windows socket及api开发各类防范黑客软件及安全防护工具的编程实现方法 ...

    【文件】C++黑客编程揭秘与防范.pdf

    第2章从剖析简单的木马说起,讲解有关的网络编程和协议知识。第3章windows应用编程基础,讲解api编程的技术。第4章加密与解密,讲解pe等加密有关的知识。第5章hook编程,讲解了与钩子有关的知识。第6章黑客编程剖析...

    寒江独钓《Windows内核安全编程》

    其实,Windows驱动程序员和黑客都在写内核程序,唯一不同的是驱动程序员按照微软设计的模型写程序,而黑客可以不按照这些框架写。Windows设计的这些框架,可以将操作系统的原理隐藏起来,只暴露一些接口,驱动程序员...

    Windows网络编程技术 Windows网络与通信程序设计(1CD)

    Socket图像数据库控件Windows网络编程技术windows sockets 网络程序设计大全Windows网络编程技术Windows网络与通信程序设计(1CD)TCP/IP网络互联技术(卷3):客户-服务器编程与应用 (Windows套接字版)Windows安全漏洞与...

    Windows内核安全编程从入门到实践 高清中文版

    基本信息 作者: 《黑客防线》编辑部 林聚伟 ...《Windows内核安全编程从入门到实践》适合大专院校计算机系的学生、Windows程序员、从事信息安全行业的工程师以及所有对Windows内核安全编程感兴趣的爱好者使用。

    Python灰帽子-黑客与逆向工程师的Python编程之道[简体中文版]

    9.3.4 网络和进程监控 9.3.5 Fuzzing测试以及Sulley的Web界面 第10章 面向Windows驱动的Fuzzing测试技术 10.1 驱动通信基础 10.2 使用Immunity Debugger进行驱动级的Fuzzing测试 10.3 Driverlib——面向驱动的静态...

    计算机网络黑客防范措施-计算机安全论文-计算机论文.docx

    计算机网络黑客防范措施-计算机安全论文-计算机论文全文共5页,当前为第1页。计算机网络黑客防范措施-计算机安全论文-计算机论文全文共5页,当前为第1页。计算机网络黑客防范措施-计算机安全论文-计算机论文 计算机...

    编程狂人第九期(2014-1-20)

    常用CSS优化总结——网络性能与语法性能建议 编程语言 2013流行Python项目汇总 15款Django开发常用软件包 Rails 3 升级 Rails 4 中遇到的问题及解决方法 php性能优化 Java中的 equals() 和 hashCode() 契约 程序...

    校园网网络安全的策略.docx

    现今,校园里采用的计算机操作系统大部分是微软公司的WINDOWS操作系统,而针对WINDOWS操作系统的病毒和黑客非常的多,安全问题十分堪忧。 1.1.2 设置上的失误 正确地安排设计校园网的配置设备是非常关键的。网络线路...

    Python网络安全项目开发实战_潜伏与Python反向连接_编程案例解析实例详解课程教程.pdf

    不管是 Windows 还是 Linux 都会一一记载登录用户的操作痕迹和连接的次数(不论是成功的连接还是不成功的连接)。如果想悄悄地来又悄悄地去,不留下一片云彩,就要小心地擦除自己的足迹,修改记录日志。作为管理员,...

    基于树莓派Kali Linux渗透测试基础教程,网络安全,计算机,黑客教程

    树莓派,(英语:Raspberry Pi,简写为RPi,别名为RasPi / RPI) [1] 是为学习计算机编程教育而设计,只有信用卡大小的微型电脑,其系统基于Linux。随着Windows 10 IoT的发布,用户可以用上运行Windows的树莓派。 ...

    Windows脚本编程核心技术精解中文版(第一分卷)

    主要内容有:脚本开发、对象调用、系统对话框调用、文件系统访问、其他程序的调用进程控制、注册表操作、系统信息处理、事件操作、网络通信、打印机等外设的使用、图标摘录、多媒体控制、数据库应用和服务器管理等。...

    网络安全ppt(1).pptx

    黑客Hacker Cracker和Hacker Kevin Mitnick 小莫里斯 网络入侵事件 网络攻击事件 网络安全维护人员和黑客之间的关系 (白帽子和灰帽子) 网络安全ppt(1)全文共65页,当前为第3页。 搜集网络信息的常用工具 Finger ...

    网络安全ppt(2).pptx

    黑客Hacker Cracker和Hacker Kevin Mitnick 小莫里斯 网络入侵事件 网络攻击事件 网络安全维护人员和黑客之间的关系 (白帽子和灰帽子) 网络安全ppt(2)全文共65页,当前为第3页。 搜集网络信息的常用工具 Finger ...

    关于计算机网络安全的论文.docx

    一些黑客便利用他们所拥有的高技术水平和对编程软件以及操作系统的熟悉程度,对存在的漏洞进行入侵和一切的破坏活动,比如对一些用户的帐号密码和身份信息进行盗取和篡改,对企业的一些商业机密文件或者一些政府组织...

    Python飞机大战的完整文件夹

    Python语言近几年发展势头迅猛, 应用领域也非常广泛, 在Web编程、图形处理、黑客编程、大数据处理、网络爬虫、科学计算和游戏编程等领域都能找到Python的应用。其中Pygame是Python的一个第三方库, 搭载了基于OpenGL...

    打败所有黑客的加密算法

    同时,你必须注意,现在很多加密算法,加密部分都是掌握在别人手上,比如你通过及时通讯或email将信息传递给你的朋友,一般加密都是掌握在即时通讯提供方,和email提供方,如果被黑客利用,你的信息将视同于没有加密...

    菜鸟宝典-(电脑基础、操作系统、常用软件、程序语言、网络知识)

    而操作系统,WINDOWS98/WINDOWS2000/LINUX这些系统你都了解了吧?常用的软件,如果你连WIZIP都不会用,那你就先修练一下自己吧。那网络呢?网络是拿来干嘛的?而在平常的操作中,碰到的问题都解决了吗?等等。。。 ...

Global site tag (gtag.js) - Google Analytics