首页 > 其他分享 >借助Radamsa变异数据(初探)

借助Radamsa变异数据(初探)

时间:2023-02-01 19:56:30浏览次数:383  
标签:pyradamsa 变异 Radamsa json 初探 input txt

Radamsa 介绍

Radamsa是一款测试用例生成器,通常用来测试程序对格式错误和潜在恶意输入的承受能力(对程序进行模糊测试)。它通过你的输入来返回变异后的数据。它的主要卖点是,它已经在真正重要的程序中发现了许多错误。

Radamsa 使用方法

1、可以直接喂给它字符,它就会返回变异之后的数据给你。

2、从文件中读入字符,他返回变异之后的数据。

3、写一个shell脚本,搭配jq来剔除不满足满足json格式的数据,留下满足要求的。

#!/bin/bash
while true; do
    radamsa test.json > ./input.txt
    jq . input.txt 2>&1
    if [ $? -gt 0 ]; then
        cp ./input.txt ./crash/crash-`date +%s`.json
        echo "Crash found"
    fi
done

4、通过 python 里pyradamsa提供的接口,来对数据进行编译

import pyradamsa

base_login_request = open("./input.txt", "rb").read()

rad = pyradamsa.Radamsa()

result = rad.fuzz(base_login_request)

print(result)

总结

合理的利用这个工具,应该可以对我们的fuzz有一定的帮助。

标签:pyradamsa,变异,Radamsa,json,初探,input,txt
From: https://www.cnblogs.com/pwnfeifei/p/17083766.html

相关文章

  • SCA技术进阶系列(一):SBOM应用实践初探
    现代软件都是组装的而非纯自研。随着开源组件在数字化应用中的使用比例越来越高,混源开发已成为当前业内主流开发方式。开源组件的引入虽然加快了软件开发效率,但同时将开源安......
  • 应用部署初探:3个主要阶段、4种常见模式
    应用部署是一个将软件提供给用户的过程,通常包含配置环境、安装及测试等步骤。现如今,大部分企业在部署新的应用程序时,会至少自动化其中一些步骤。应用程序部署的策略会影响......
  • 应用部署初探:3个主要阶段、4种常见模式
    应用部署是一个将软件提供给用户的过程,通常包含配置环境、安装及测试等步骤。现如今,大部分企业在部署新的应用程序时,会至少自动化其中一些步骤。应用程序部署的策略会影响该......
  • xenomai初探
    Xenomai定义一个realtime的系统需要保证其工作在给定的时间限制之内完成。系统不需要以最快的速度完成任务,但是需要在指定的定时时间范围内完成。在这个前提条件下,realt......
  • 初探富文本之OT协同实例
    初探富文本之OT协同实例在前边初探富文本之OT协同算法一文中我们探讨了为什么需要协同、为什么仅有原子化的操作并不能实现协同、为什么要有操作变换、如何进行操作变换、......
  • 竞赛图初探 || CF1779E Anya's Simultaneous Exhibition - 竞赛图 - 交互 -
    题目链接:https://codeforces.com/contest/1779/problem/E题解:将一个完全图的每条边定向,构成的有向图叫做竞赛图也很好理解,\(n\)个人两两比赛,肯定有胜有负,赢家向负者连......
  • 初探attention—attention原理和代码详解
    attention在正式开始探索attention之前,首先了解一下seq2seq。循环神经网络只能将一个序列信号转换为定长输出,但Seq2Seq可以实现一个序列信号转化成一个不定长的序列输出,因......
  • 手写笔记23:初探JUC并发编程
     ......
  • 手写笔记12:初探ConcurrentHashMap?[分段锁]
     ......
  • buuctf 变异凯撒 Quoted-printable 1 rabbit
    这题很明显要用凯撒解密,凯撒密码就是简单的位移操作,虽然用工具很容易就解出,但它是变异的,需要对照ASCII表,毕竟有特殊字符在里面,除了用工具,还可以写个小程序跑一下。afZ_r9VY......