Python可以做系统底层开发吗
发布网友
发布时间:2022-04-20 16:08
我来回答
共5个回答
热心网友
时间:2022-04-06 09:07
可以的,因为pytho可以调用系统的API,C怎么调用,python一样怎么调用就行。
具体如何实现可以参考:python灰帽子一书,这本书的中文版网上到处有下,一下就好
下面是目录:看看吧,没什么不能做的
目录
· · · · · ·
第1章 搭建开发环境1
1.1 操作系统要求1
1.2 获取和安装Python 2.52
1.2.1 在Windows下安装Python2
1.2.2 在Linux下安装Python2
1.3 安装Eclipse和PyDev4
1.3.1 黑客挚友:ctype库5
1.3.2 使用动态链接库6
1.3.3 构建C数据类型8
1.3.4 按引用传参9
1.3.5 定义结构体和联合体9
第2章 调试器原理和设计12
2.1 通用寄存器13
2.2 栈15
2.3 调试事件17
2.4 断点18
2.4.1 软断点18
2.4.2 硬件断点20
2.4.3 内存断点22
第3章 构建自己的Windows调试器24
3.1 Debugee,敢问你在何处24
3.2 获取寄存器状态信息33
3.2.1 线程枚举34
3.2.2 功能整合35
3.3 实现调试事件处理例程39
3.4 无所不能的断点44
3.4.1 软断点44
3.4.2 硬件断点49
3.4.3 内存断点55
3.5 总结59
第4章 PyDbg——Windows下的纯Python调试器60
4.1 扩展断点处理例程60
4.2 非法内存操作处理例程63
4.3 进程快照66
4.3.1 获取进程快照67
4.3.2 汇总与整合70
第5章 Immunity Debugger——两极世界的最佳选择74
5.1 安装Immunity Debugger74
5.2 Immunity Debugger 10175
5.2.1 PyCommand命令76
5.2.2 PyHooks76
5.3 Exploit(漏洞利用程序)开发78
5.3.1 搜寻exploit友好指令78
5.3.2 “坏”字符过滤80
5.3.3 绕过Windows 下的DEP机制82
5.4 破除恶意软件中的反调试例程87
5.4.1 IsDebuugerPresent87
5.4.2 破除进程枚举例程88
第6章 钩子的艺术90
6.1 使用PyDbg部署软钩子90
6.2 使用Immunity Debugger部署硬钩子95
第7章 DLL注入与代码注入技术101
7.1 创建远程线程101
7.1.1 DLL注入102
7.1.2 代码注入105
7.2 遁入黑暗108
7.2.1 文件隐藏109
7.2.2 构建后门110
7.2.3 使用py2exe编译Python代码114
第8章 Fuzzing117
8.1 几种常见的bug类型118
8.1.1 缓冲区溢出118
8.1.2 整数溢出119
8.1.3 格式化串攻击121
8.2 文件Fuzzer122
8.3 后续改进策略129
8.3.1 代码覆盖率129
8.3.2 自动化静态分析130
第9章 Sulley131
9.1 安装Sulley132
9.2 Sulley中的基本数据类型132
9.2.1 字符串133
9.2.2 分隔符133
9.2.3 静态和随机数据类型134
9.2.4 二进制数据134
9.2.5 整数134
9.2.6 块与组135
9.3 行刺WarFTPD136
9.3.1 FTP 101137
9.3.2 创建FTP协议描述框架138
9.3.3 Sulley会话139
9.3.4 网络和进程监控140
9.3.5 Fuzzing测试以及Sulley的Web界面141
第10章 面向Windows驱动的Fuzzing测试技术145
10.1 驱动通信基础146
10.2 使用Immunity Debugger进行驱动级的Fuzzing测试147
10.3 Driverlib——面向驱动的静态分析工具151
10.3.1 寻找设备名称152
10.3.2 寻找IOCTL分派例程153
10.3.3 搜寻有效的IOCTL控制码155
10.4 构建一个驱动Fuzzer157
第11章 IDAPython——IDA PRO环境下的Python脚本编程162
11.1 安装IDAPython163
11.2 IDAPython函数164
11.2.1 两个工具函数164
11.2.2 段(Segment)164
11.2.3 函数165
11.2.4 交叉引用166
11.2.5 调试器钩子166
11.3 脚本实例167
11.3.1 搜寻危险函数的交叉代码168
11.3.2 函数覆盖检测169
11.3.3 检测栈变量大小171
第12章 PYEmu——脚本驱动式仿真器174
12.1 安装PyEmu174
12.2 PyEmu概览175
12.2.1 PyCPU175
12.2.2 PyMemory176
12.2.3 PyEmu176
12.2.4 指令执行176
12.2.5 内存修改器与寄存器修改器177
12.2.6 处理例程(Handler)177
12.3 IDAPyEmu182
12.3.1 函数仿真184
12.3.2 PEPyEmu187
12.3.3 可执行文件加壳器188
12.3.4 UPX加壳器188
12.3.5 利用PEPyEmu脱UPX壳189
热心网友
时间:2022-04-06 10:25
Python不适合直接做底层开发,这一般要用C,C++等
基于一些库用Python做 webserver也是有的。
热心网友
时间:2022-04-06 12:00
你好,可以参考这篇文章,http://www.cnblogs.com/mosesding/archive/2012/06/01/2530985.html
我记得python好像不能写驱动程序,在驱动程序以上的高层功能应该都可以做。
热心网友
时间:2022-04-06 13:51
系统底层是指什么呢?通常驱动我们都是用C做的。如果做驱动层的服务层反而没有这么要求,可以用C也可以用python来做。
python可以做游戏客户端eve online。 python可以引用C库做大规模数据计算, 也可以做语言理解,做搜索引擎,做高速服务器。 做数据挖掘。做桌面,做运维管理。
好象除了操作系统的个别组件。大部分应用都可以用python来做。包括外挂。黑客的一些工具都可以。
当然python还是有些慢。效率远远比不上java和C。内存管理也不是很有效。开发出来的程序错误多。但是它的开发速度快,成本低。
热心网友
时间:2022-04-06 15:59
Python是一个非常好用的编程语言开发的速度非常快,而且语法简单,通俗易懂,很容易上手,很适合初学者学习,对于Python的了解,很多人只知道Python与人工智能关系密切,却不知道Python的其他用途,其实学好Python还可以做很多事情