Commit 6dae2b19 by 凌振

新增程序编译

parent fb45ed07
# 备注
# 模板
# 模板
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ---- | ---- | -------- | ---- | -------- |
| | | | | |
**编译过程**
```shell
```
**fuzz过程**
```shell
```
**参数说明**
# 备注
**Ps:带*的是没有fuzz成功的项目**
......@@ -16,13 +38,13 @@ echo performance | tee cpu*/cpufreq/scaling_governor
# git
## 信息
信息
| 名称 | 版本 | 源码地址 |
| ---- | ---------- | ------------------------------ |
| git | 2.48.0-rc1 | https://github.com/git/git.git |
## 编译过程
编译过程
```shell
git clone https://github.com/git/git.git
......@@ -32,7 +54,7 @@ CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ ./configure
make
```
## fuzz过程
fuzz过程
```shell
#diff命令 比较两个文件的不同
......@@ -41,13 +63,13 @@ make
# Gstreamer
## 信息
信息
| 名称 | 版本 | 源码地址 |
| --------- | ------ | -------------------------------------- |
| Gstreamer | master | https://github.com/GStreamer/gstreamer |
## 编译过程
编译过程
```shell
#如果没有pip3 需要安装
......@@ -63,7 +85,7 @@ meson setup builddir //下载可能失败,多尝试几次
meson compile -C builddir
```
## fuzz过程
fuzz过程
```shell
#创建所需文件夹
......@@ -216,13 +238,13 @@ cp $SRC/gstreamer/ci/fuzzing/gst-discoverer.corpus $SRC/gstreamer/input
# 7zip
## 信息
信息
| 名称 | 版本 | 源码地址 |
| ---- | ----- | -------------------------------- |
| 7zip | 24.06 | https://github.com/ip7z/7zip.git |
## 编译过程
编译过程
```shell
git clone https://github.com/ip7z/7zip.git
......@@ -234,7 +256,7 @@ export CXX=/home/fuzz_dir/AFL/afl-g++
make -j -f makefile.gcc
```
## fuzz过程
fuzz过程
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/archives/common/zip/ -o ./output ./_o/7zz e @@
......@@ -252,7 +274,7 @@ make -j -f makefile.gcc
`yyjson` 是一个 **高性能** 的 JSON 解析和生成库,主要用 C 语言编写。它旨在提供 **速度快、内存占用少** 的 JSON 处理能力,同时保持 **简单易用** 的 API。`yyjson` 强调 **零拷贝**,尽可能避免数据复制,从而提升性能。
## 编译过程
编译过程
```shell
git https://github.com/ibireme/yyjson.git
......@@ -263,7 +285,7 @@ cmake ..
cmake --build .
```
## 创建可执行文件
创建可执行文件
```shell
cd ..
......@@ -330,7 +352,7 @@ int main(int argc, char *argv[]){
```
## fuzz过程
fuzz过程
```shell
# -L 指定库路径 -I 指定头文件路径 -lyyjson指定引用
......@@ -344,13 +366,13 @@ int main(int argc, char *argv[]){
# mosquitto(协议)
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| --------- | ------ | ---------------------------------------------- | ---------- |
| mosquitto | master | https://github.com/eclipse-mosquitto/mosquitto | 2024-11-02 |
## 编译过程
编译过程
```shell
git https://github.com/eclipse-mosquitto/mosquitto.git
......@@ -367,7 +389,7 @@ make
# libtiff
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ------- | ------ | ---------------------------------- | ---------- |
......@@ -375,7 +397,7 @@ make
libtiff 是一个开源的 C 语言库,专门用于读取和写入 **Tagged Image File Format (TIFF)** 图像文件。TIFF 是一种灵活且可扩展的图像文件格式,广泛用于存储高质量的图像数据,尤其是在出版、医学成像、地理信息系统 (GIS) 和科学研究等领域。
## 编译过程
编译过程
```shell
git clone https://gitlab.com/libtiff/libtiff
......@@ -385,19 +407,19 @@ export CXX=/home/fuzz_dir/AFL/afl-g++
./autogen.sh
./configure --disable-shared #若跑出来的可执行文件为script脚本 可以加这个参数
make
#在tool文件夹中有很多可执行文件可以被测试
cd tools
```
## fuzz过程
fuzz过程
```shell
#在tool文件夹中有很多可执行文件可以被测试
cd tools
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/images/tiff/ -o ./output/ ./tools/tiff2pdf @@
```
# ncurses
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 更新时间 |
| ------- | ------ | --------------------------------- | ---------- |
......@@ -407,7 +429,7 @@ ncurses (new curses) 是一个 **自由软件** 的编程库,它为程序员
简单来说,ncurses 让你能够在文本模式下,像图形用户界面 (GUI) 一样,创建具有交互性的应用程序。
## 编译过程
**编译过程**
```shell
git clone https://github.com/mirror/ncurses.git
......@@ -418,7 +440,7 @@ export CXX=/home/fuzz_dir/AFL/afl-g++
make
```
## fuzz过程
**fuzz过程**
```
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/others/text/ -o ./output ./progs/tic @@
......@@ -426,13 +448,13 @@ make
# vim
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 更新时间 |
| ---- | ------ | -------------------------- | ---------- |
| vim | master | https://github.com/vim/vim | 2025-01-09 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/vim/vim.git
......@@ -443,7 +465,7 @@ export CXX=/home/fuzz_dir/AFL/afl-g++
make
```
## fuzz过程
**fuzz过程**
```
/home/fuzz_dir/AFL/afl-fuzz -m none -i /home/fuzz_dir/AFL/testcases/others/text/ -o ./output ./src/vim -u NONE -N -X -Z -e -s -c 'call search(getline("."))' -c ':qa!' @@
......@@ -453,7 +475,7 @@ make
# opus
## 信息
**信息**
Opus 是一种主要用于音频编码的开源有损编解码器
......@@ -461,7 +483,7 @@ Opus 是一种主要用于音频编码的开源有损编解码器
| ---- | ------ | --------------------------------- | ---------- |
| opus | master | https://gitlab.xiph.org/xiph/opus | 2024-10-16 |
## 编译过程
**编译过程**
```shell
git https://gitlab.xiph.org/xiph/opus.git
......@@ -473,7 +495,7 @@ export CXX=/home/fuzz_dir/AFL/afl-g++
make
```
## fuzz过程
**fuzz过程**
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/multimedia/h264 -o output ./opus_demo -e audio 48000 2 64000 @@ /dev/null
......@@ -485,7 +507,7 @@ make
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/multimedia/h264 -o output ./opus_demo audio 48000 2 64000 -bandwidth FB -inbandfec -forcemono @@ /dev/null
```
## 参数说明
**参数说明**
> - `-e`
> **仅运行编码器(输出比特流)**
......@@ -548,13 +570,13 @@ make
# OpenBSD(*)
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ------- | ------ | -------------------------------------------------- | ---------- |
| OpenBSD | master | https://ftp.openbsd.org/pub/OpenBSD/7.6/src.tar.gz | 2024-09-30 |
## 编译过程
编译过程
```shell
wget https://ftp.openbsd.org/pub/OpenBSD/7.6/src.tar.gz
......@@ -566,7 +588,7 @@ export CXX=/home/fuzz_dir/AFL/afl-g++
make
```
## fuzz过程
fuzz过程
```
/home/fuzz_dir/AFL/afl-fuzz -m none -i /home/fuzz_dir/AFL/testcases/others/text/ -o ./output ./src/vim -u NONE -N -X -Z -e -s -c 'call search(getline("."))' -c ':qa!' @@
......@@ -576,13 +598,13 @@ make
# jerryscript(*)
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ----------- | ------ | -------------------------------------------------- | ---------- |
| jerryscript | master | https://github.com/jerryscript-project/jerryscript | 2024-12-17 |
## 编译过程
编译过程
```shell
git clone https://github.com/jerryscript-project/jerryscript.git
......@@ -595,7 +617,7 @@ cmake ..
make
```
## fuzz过程
fuzz过程
```shell
......@@ -603,7 +625,7 @@ make
# assimp(*)
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ------ | ------ | -------------------------------- | ---------- |
......@@ -613,7 +635,7 @@ Assimp (Open Asset Import Library) 是一个开源的、跨平台的 **3D 模型
简单来说,Assimp 让你不必为每种 3D 模型格式编写单独的解析器,而是可以使用一套通用的 API 来加载和处理不同格式的 3D 模型数据。
## 编译过程
编译过程
```shell
git clone https://github.com/assimp/assimp.git
......@@ -639,7 +661,7 @@ source ~/.bashrc
cmake --version #验证是否生效
```
## 创建可执行文件
创建可执行文件
```shell
cd ..
......@@ -748,7 +770,7 @@ int main(int argc, char *argv[]){
}
```
## fuzz过程
fuzz过程
```shell
# -L 指定库路径 -I 指定头文件路径 -lxxx指定引用
......@@ -757,13 +779,13 @@ int main(int argc, char *argv[]){
# uAMQP(*)
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ----- | ------ | -------------------------------------- | ---------- |
| uAMQP | master | https://github.com/Azure/azure-uamqp-c | 2025-01-07 |
## 编译过程
编译过程
```shell
git clone https://github.com/Azure/azure-uamqp-c.git
......@@ -774,7 +796,7 @@ cmake ..
cmake --build .
```
## fuzz过程
fuzz过程
```shell
......@@ -782,13 +804,13 @@ cmake --build .
# FFmpeg
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ------ | ------ | -------------------------------- | ---------- |
| FFmpeg | master | https://github.com/FFmpeg/FFmpeg | 2025-01-12 |
## 编译过程
编译过程
```shell
git https://github.com/FFmpeg/FFmpeg.git
......@@ -798,7 +820,7 @@ cc=/home/fuzz_dir/AFL/afl-gcc cxx=/home/fuzz_dir/AFL/afl-g++ ./configure
make
```
## fuzz过程
fuzz过程
```shell
# -m none命令 不限制内存
......@@ -812,13 +834,13 @@ make
# ZSTD
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ---- | ----- | -------------------------------- | ---------- |
| ZSTD | 1.5.7 | https://github.com/facebook/zstd | 2025-02-14 |
## 编译过程
编译过程
```shell
git clone https://github.com/facebook/zstd
......@@ -826,14 +848,14 @@ cd zstd
CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ make -j 4
```
## fuzz过程
fuzz过程
```shell
# -9:最高压缩级别(速度慢,压缩率高) -f:强制覆盖已存在的输出文件
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/others/sql/ -o ./output ./programs/zstd -9 -f @@ -o /dev/null
```
## 参数说明
参数说明
> ### 基本选项
>
......@@ -1044,13 +1066,13 @@ CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ make -j 4
# WavPack
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ------- | ------ | ----------------------------------- | ---------- |
| WavPack | master | https://github.com/dbry/WavPack.git | 2025-02-08 |
## 编译过程
编译过程
```shell
git clone https://github.com/dbry/WavPack.git
......@@ -1365,7 +1387,7 @@ int main(int argc, char *argv[]){
```
## fuzz过程
fuzz过程
```shell
unzip fuzzer_seed_corpus.zip
......@@ -1376,13 +1398,13 @@ unzip fuzzer_seed_corpus.zip
# lz4
## 信息
信息
| 名称 | 版本 | 源码地址 | 更新时间 |
| ---- | ------ | ------------------------------ | ---------- |
| lz4 | 1.10.0 | https://github.com/lz4/lz4.git | 2025-02-03 |
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ---- | ------ | ------------------------------ | -------------------- | ---------- |
| lz4 | 1.10.0 | https://github.com/lz4/lz4.git | 高性能的压缩算法和库 | 2025-02-03 |
## 编译过程
编译过程
```shell
git clone https://github.com/lz4/lz4.git
......@@ -1390,7 +1412,7 @@ cd zstd
CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ make -j 4
```
## fuzz过程
fuzz过程
```shell
#压缩fuzz -k:保留源文件 --best:最高压缩率(可能牺牲速度)
......@@ -1402,7 +1424,7 @@ mkdir input
```
## 参数说明
参数说明
> #### 基本参数
>
......@@ -1567,15 +1589,13 @@ mkdir input
# pcre2
**一个功能强大的正则表达式库,广泛用于文本匹配和处理。**
**信息**
## 信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ----- | -------------------- | ------------------------------------- | ---------------------------------------------------- | ---------- |
| pcre2 | 10.46-DEV 2024-06-09 | https://github.com/PCRE2Project/pcre2 | 一个功能强大的正则表达式库,广泛用于文本匹配和处理。 | 2025-02-17 |
| 名称 | 版本 | 源码地址 | 更新时间 |
| ----- | -------------------- | ------------------------------------- | ---------- |
| pcre2 | 10.46-DEV 2024-06-09 | https://github.com/PCRE2Project/pcre2 | 2025-02-17 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/PCRE2Project/pcre2
......@@ -1585,22 +1605,23 @@ CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ ./configure --disab
make -j4
```
## fuzz过程
**fuzz过程**
```shell
#-d:选项启用调试模式,显示匹配过程的详细信息
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/others/text/ -o ./output ./pcre2test -d @@ /dev/null
```
./asan_code/pcre2/pcre2test -d ./5_id:000322,sig:11,src:917170366+022503,op:splice,rep:16 /dev/null
```
# libwebp
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------- | ----- | -------------------------------------- | ------------------------------------------------ | ---------- |
| libwebp | 1.5.0 | https://github.com/webmproject/libwebp | 开源的图像编解码库,专门用于处理 WebP 格式的图像 | 2025-01-30 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/webmproject/libwebp
......@@ -1610,7 +1631,7 @@ CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ ./configure --enabl
make -j4
```
## fuzz过程
**fuzz过程**
```shell
#将其他格式图片装转为webp格式 -m:指定压缩速度(0-6,0 最快但压缩率最低,6 最慢但压缩率最高) -q:指定压缩质量(0-100,默认 75)
......@@ -1621,15 +1642,13 @@ make -j4
# libvpx
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------ | ----- | ----------------------------------------- | ------------------------------------------------------------ | ---------- |
| libvpx | 1.5.0 | https://github.com/webmproject/libvpx.git | 开源的视频编解码器库,主要用于 VP8 和 VP9 视频格式的编码和解码 | 2025-02-05 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/webmproject/libvpx.git
......@@ -1639,26 +1658,24 @@ CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ ./configure --enab
make -j4
```
## fuzz过程
**fuzz过程**
```shell
#vpxdec视频解码 需要.y4m格式的种子unifuzz上面有 --width --height :指定视频的分辨率 --codec:指定编码格式为 VP8(也可以是 vp9)
#vpxenc视频解码 需要.y4m格式的种子unifuzz上面有 --width --height :指定视频的分辨率 --codec:指定编码格式为 VP8(也可以是 vp9)
/home/fuzz_dir/AFL/afl-fuzz -m none -i ./*.y4m -o ./output ./vpxenc --width=640 --height=480 --codec=vp8 -o /dev/null @@
#vpxdec视频编码 需要webm格式的种子unifuzz上面有
/home/fuzz_dir/AFL/afl-fuzz -m none -i ./*.webm -o ./output ./vpxenc @@ -o /dev/null
/home/fuzz_dir/AFL/afl-fuzz -m none -i ./*.webm -o ./output ./vpdec @@ -o /dev/null
```
# theora
## 信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------ | ----- | --------------------------------------- | ---------------------------------------------------------- | ---------- |
| theora | 1.5.0 | https://gitlab.xiph.org/xiph/theora.git | 开源的视频编解码器,主要用于压缩和解压缩 Theora 格式的视频 | 2020-06-19 |
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------ | ---- | --------------------------------------- | ---------------------------------------------------------- | ---------- |
| theora | 1.1 | https://gitlab.xiph.org/xiph/theora.git | 开源的视频编解码器,主要用于压缩和解压缩 Theora 格式的视频 | 2020-06-19 |
## 编译过程
**编译过程**
```shell
git clone https://gitlab.xiph.org/xiph/theora.git
......@@ -1669,7 +1686,7 @@ CC=/home/fuzz_dir/AFL/afl-gcc CXX=/home/fuzz_dir/AFL/afl-g++ ./configure --enabl
make -j4
```
## fuzz过程
**fuzz过程**
```shell
#将tiff转为theora --chroma-444:使用 4:4:4 色度采样。-v:设置 Theora 视频质量,范围为 0 到 10
......@@ -1678,13 +1695,13 @@ make -j4
# minizip-ng
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ---------- | ----- | ------------------------------------- | ------------- | ---------- |
| minizip-ng | 4.0.8 | https://github.com/zlib-ng/minizip-ng | 压缩/解压缩库 | 2025-01-09 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/zlib-ng/minizip-ng
......@@ -1694,7 +1711,7 @@ cd build
make && make install
```
## fuzz过程
**fuzz过程**
```shell
# -x:解压文件 -d:解压后文件存放文件夹
......@@ -1703,13 +1720,13 @@ make && make install
# harfbuzz
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| -------- | ------ | ---------------------------------------- | -------- | ---------- |
| harfbuzz | 10.1.0 | https://github.com/harfbuzz/harfbuzz.git | 字体工具 | 2025-02-19 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/harfbuzz/harfbuzz.git
......@@ -1721,7 +1738,7 @@ meson setup build
meson compile -C build
```
## fuzz过程
**fuzz过程**
```shell
#文本整形
......@@ -1730,9 +1747,9 @@ meson compile -C build
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/others/text/ -o output ./build/util/hb-view --font-file=./test/api/fonts/TestGVAREight.ttf --text-file=@@
```
## 参数说明
**参数说明**
### hb-shape
**hb-shape**
> ### 帮助选项
>
......@@ -1837,13 +1854,13 @@ meson compile -C build
# libjpeg-turbo
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------------- | ------ | -------------------------------------------------- | ---------------- | ---------- |
| libjpeg-turbo | 10.1.0 | https://github.com/libjpeg-turbo/libjpeg-turbo.git | JPEG图像编解码器 | 2025-02-18 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/libjpeg-turbo/libjpeg-turbo.git
......@@ -1854,7 +1871,7 @@ make -j4
#可执行程序,build/cjpeg、djpeg
```
## fuzz过程
**fuzz过程**
```shell
#压缩图像为JPEG
......@@ -1879,9 +1896,9 @@ make -j4
```
## 参数说明
**参数说明**
### cjpeg
**cjpeg**
> ### **基础参数**
>
......@@ -1959,7 +1976,7 @@ make -j4
> 5. **`-scans FILE`**
> - 根据脚本文件生成多扫描(multi-scan)JPEG(用于渐进式编码优化)。
### djpeg
**djpeg**
> ### **基础参数**
>
......@@ -2038,7 +2055,7 @@ make -j4
> 3. **`-version`**
> - 显示版本信息并退出。
### jpegtran-static
**jpegtran-static**
> ### **基础参数**
>
......@@ -2122,13 +2139,13 @@ make -j4
# speex
## 信息
信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ----- | ----- | -------------------------------------- | ------------ | ---------- |
| speex | 1.2.1 | https://gitlab.xiph.org/xiph/speex.git | 音频编解码器 | 2025-02-18 |
## 编译过程
编译过程
```shell
git clone https://gitlab.xiph.org/xiph/speex.git
......@@ -2140,7 +2157,7 @@ make -j4
cd src
```
## fuzz过程
fuzz过程
```shell
#speexdec:解码Speex文件并将其转换为WAV,unifuzz上面有测试用例.spx
......@@ -2149,9 +2166,9 @@ cd src
/home/fuzz./aut _dir/AFL/afl-fuzz -i ./*.spx -o ../enc_output ./speexenc --quality 0 --bitrate 4 --vbr --denoise --agc --vad --comp 10 --16bit @@ /dev/null
```
## 参数说明
参数说明
### speexdec
speexdec
> - ### **输入文件**
>
......@@ -2227,7 +2244,7 @@ cd src
>
> - **`--no-pf`**:已弃用,改用 `--no-enh`。
### speexenc
**speexenc**
> 这是一个用于将音频文件编码为 **Speex** 格式的命令行工具。以下是各部分的详细中文解释:
>
......@@ -2349,13 +2366,13 @@ cd src
# nettle
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------ | ------ | ---------------------------------------- | ---------------- | ---------- |
| nettle | 3.10.1 | https://git.lysator.liu.se/nettle/nettle | 用于加密的低级库 | 2025-02-10 |
## 编译过程
**编译过程**
```shell
git clone https://git.lysator.liu.se/nettle/nettle
......@@ -2368,13 +2385,13 @@ make -j4
cd tools
```
## fuzz过程
**fuzz过程**
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/others/text/ -o ./output ./nettle-hash -a sha256 @@
```
## 参数说明
**参数说明**
> ### **选项**
>
......@@ -2409,13 +2426,13 @@ cd tools
# lcms2
## 信息
信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ----- | ---- | ------------------------------------- | -------------- | ---------- |
| lcms2 | 2.17 | https://github.com/mm2/Little-CMS.git | 颜色管理系统库 | 2025-02-17 |
## 编译过程
编译过程
```shell
git clone https://github.com/mm2/Little-CMS.git
......@@ -2427,13 +2444,13 @@ make -j4
cd utils/jpgicc/
```
## fuzz过程
fuzz过程
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/images/jpeg/ -o ./output ./jpgicc @@ /dev/null
```
## 参数说明
参数说明
> ### **基本用法**
>
......@@ -2511,13 +2528,13 @@ cd utils/jpgicc/
# libyaml
## 信息
信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------- | ---- | ----------------------------------- | --------------- | ---------- |
| libyaml | 2.17 | https://github.com/yaml/libyaml.git | 解析和发出 YAML | 2024-05-20 |
## 编译过程
编译过程
```shell
git clone https://github.com/yaml/libyaml.git
......@@ -2529,23 +2546,21 @@ make -j4
cd ./tests
```
## fuzz过程
fuzz过程
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/lingzhen/code/libyaml/examples/ -o ./output ./run-scanner @@ /dev/null
```
## 参数说明
# libtasn1
## 信息
信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| -------- | -------- | -------------------------------------- | ------------------------------------- | ---------- |
| libtasn1 | 4.20.0.7 | https://gitlab.com/gnutls/libtasn1.git | ASN.1(抽象语法标记法)编码和解码的库 | 2025-02-21 |
## 编译过程
编译过程
```shell
git clone https://gitlab.com/gnutls/libtasn1.git
......@@ -2558,15 +2573,15 @@ make -j4
cd ./tests
```
## fuzz过程
fuzz过程
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/lingzhen/code/libtasn1/tests/ -o ./output ./src/asn1Parser -c @@ -o /dev/null
```
## 参数说明
参数说明
### asn1Parser
asn1Parser
> ### **选项**
>
......@@ -2597,13 +2612,13 @@ cd ./tests
# libsodium
## 信息
信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| --------- | ------ | ----------------------------------------- | ---------------------------------- | ---------- |
| libsodium | master | https://github.com/jedisct1/libsodium.git | 用于加密、解密、签名、密码哈希处理 | 2025-02-21 |
## 编译过程
编译过程
```shell
git clone https://github.com/jedisct1/libsodium.git
......@@ -2632,56 +2647,38 @@ int test_func(const uint8_t *Data, size_t Size) {
unsigned char nonce[crypto_secretbox_NONCEBYTES];
randombytes_buf(key, sizeof key);
randombytes_buf(nonce, sizeof nonce);
unsigned char hash[crypto_generichash_BYTES];
crypto_generichash(hash, sizeof hash, (const unsigned char *)Data, Size, NULL, 0);
unsigned char ciphertext[Size + crypto_secretbox_MACBYTES];
crypto_secretbox_easy(ciphertext, (const unsigned char *)Data, Size, nonce, key);
// 解密
unsigned char decrypted[Size];
if (crypto_secretbox_open_easy(decrypted, ciphertext, sizeof ciphertext, nonce, key) != 0) {
return 1;
}
//非对称加解密
unsigned char public_key[crypto_box_PUBLICKEYBYTES];
unsigned char private_key[crypto_box_SECRETKEYBYTES];
unsigned char nonce1[crypto_box_NONCEBYTES];
unsigned char ciphertext1[Size+ crypto_box_MACBYTES];
// 生成密钥对
crypto_box_keypair(public_key, private_key);
// 生成随机数
randombytes_buf(nonce1, sizeof nonce1);
// 加密
crypto_box_easy(ciphertext1, (const unsigned char *)Data, Size, nonce1, public_key, private_key);
printf("密文: ");
for (int i = 0; i < sizeof ciphertext1; i++) {
printf("%02x", ciphertext1[i]);
}
printf("\n");
// 解密
unsigned char decrypted1[Size];
if (crypto_box_open_easy(decrypted1, ciphertext1, sizeof ciphertext1, nonce1, public_key, private_key) != 0) {
return 1;
}
return 0;
}
int main(int argc, char *argv[]){
if(argc==1){
printf("%s\n", "usage");
......@@ -2694,29 +2691,25 @@ int main(int argc, char *argv[]){
printf("cannot open file:%s\n", file_path);
return 0;
}
fseek(fp, 0, SEEK_END);
size_t file_len = ftell(fp);
uint8_t *tmp = (uint8_t*)malloc(sizeof(uint8_t) * file_len);
fseek(fp, 0, SEEK_SET);
fread(tmp, file_len, sizeof(uint8_t), fp);
fclose(fp);
test_func(tmp, file_len);
return 0;
}
```
## fuzz过程
fuzz过程
```shell
/home/fuzz_dir/AFL/afl-fuzz -d -i /home/fuzz_dir/AFL/testcases/others/text/ -o ./output ./libsodium_target @@
```
## 参数说明
参数说明
> 1. **初始化 libsodium**:
> - 使用 `sodium_init()` 初始化库。
......@@ -2734,13 +2727,13 @@ int main(int argc, char *argv[]){
# libexpat
## 信息
信息
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| -------- | ----- | ------------------------------------ | ---------- | ---------- |
| libexpat | 2.6.4 | https://github.com/libexpat/libexpat | XML 解析库 | 2025-02-26 |
## 编译过程
编译过程
```shell
git clone https://github.com/libexpat/libexpat
......@@ -2752,13 +2745,13 @@ make -j4
cd ./xmlwf/
```
## fuzz过程
fuzz过程
```shell
/home/fuzz_dir/AFL/afl-fuzz -i /home/fuzz_dir/AFL/testcases/others/xml/ -o output ./xmlwf -n -x -w -r @@ /dev/null
```
## 参数说明
参数说明
> ### **选项说明**
>
......@@ -2808,13 +2801,13 @@ cd ./xmlwf/
# icu
## 信息
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ---- | ---- | -------------------------------------- | -------- | ---------- |
| icu | | https://github.com/unicode-org/icu.git | 字符转义 | 2025-02-26 |
| icu | 77.1 | https://github.com/unicode-org/icu.git | 字符转义 | 2025-02-26 |
## 编译过程
**编译过程**
```shell
git clone https://github.com/unicode-org/icu.git
......@@ -2825,10 +2818,32 @@ cd bin
#如果报错可以通过ldd查询缺失的引用,将lib文件夹中的文件复制到系统/lib/x86_64-linux-gnu/文件夹中
```
## fuzz过程
**fuzz过程**
```shell
/home/fuzz_dir/AFL/afl-fuzz -m none -i /home/fuzz_dir/AFL/testcases/others/text/ -o output ./genrb -j -k @@ -d /dev/null
```
## 参数说明
**参数说明**
# openssl
**信息**
| 名称 | 版本 | 源码地址 | 简介 | 更新时间 |
| ------- | ---- | -------------------------------------- | ------------------------------------------------- | ---------- |
| openssl | | https://github.com/openssl/openssl.git | 加密库,提供了 SSL/TLS 协议的实现以及各种加密算法 | 2025-03-19 |
**编译过程**
```shell
git clone https://github.com/openssl/openssl.git
```
**fuzz过程**
```shell
```
**参数说明**
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment