38、编程中的编译、错误与漏洞利用

编程中的编译、错误与漏洞利用

1. 编译与构建

在测试过程中,并非所有所需程序都能在Kali仓库中找到。当遇到Kali仓库中没有、无法使用 apt 安装的软件包时,就需要从源代码进行构建。

1.1 单文件编译

以名为 wubble.c 的源文件为例,将其编译为可执行文件,可使用以下命令:

gcc -Wall -o wubble wubble.c
  • gcc :编译器可执行文件。
  • -Wall :用于查看所有警告,这些警告是代码中潜在的问题,但并非会阻止编译的错误。
  • -o :指定输出文件的名称。若不指定,默认输出文件名为 a.out
1.2 使用 make 自动化构建

当有多个源文件需要编译并链接成一个可执行文件时,使用 make 来自动化构建过程最为便捷。 make 通过运行 Makefile 中包含的命令集来工作, Makefile 包含了一系列指令,用于执行编译源文件、链接、删除目标文件等与构建相关的任务。

以下是一个 Makefile 示例:

<
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值