在最近的工作回顾过程中,发现Peach Tech在2020年被gitlab给收购了,而且在gitlab上释放出一份有删减的基于Pro版本的开源代码,供游客使用。鉴于以前Pro强大的功能和文档在3.x community版本中的缺失,怎么能不试用一下呢。花费了一天的时间进行构建,虽然最终没有得到理想的结果,但也算迈出了一小步,简单记录下过程和几个小坑,期待后期gitlab可以将整个版本升级使用最新的 […]
分类: peach
mysql登陆协议peachfuzz测试套
基于最后一个社区版本的peach,模拟mysql客户端登陆协议,进行fuzz测试的测试套。对于那些兼容mysql的国产数据库,协议安全性验证可以起到一个补充,目前只支持tcp协议,ssl不兼容。 https://github.com/mowblog/testcode/tree/master/peach/fuzz_mysql
peach的Choice模型简要
先从最简单的Choice数据模型开始看peach下的Choice到底是怎么执行的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<DataModel name="ChoiceSample"> <Choice name="Choice1" > <Block name="Type1"> <String value="[String in Type1]" /> </Block> <Block name="Type2"> <String value="[String in Type2]" /> </Block> <Block name="Type3"> <String value="[String in Type3]" /> </Block> <Block name="Type4"> <String value="[String in Type4]" /> </Block> <Block name="Type5"> <String value="[String in Type5]" /> </Block> </Choice> </DataModel> |
1 2 3 4 5 6 7 8 9 |
<StateModel name="State" initialState="State1" > <State name="State1" > <Action type="output" > <DataModel ref="ChoiceSample" /> </Action> </State> </StateModel> |
默认的情况下,直接引用Choice类型,peach运行总是选择Choice模块中第一个出现的数据,这里是Type1:
1 2 3 4 5 6 7 8 9 10 11 |
[*] Test 'Default' starting with random seed 37190. [R1,-,-] Performing iteration [String in Type1] [1,2,0:00:00.078] Performing iteration [String in Type1] [2,2,0:00:00.041] Performing iteration [String in Type1] [*] Test 'Default' finished. |
[…]
peach入门示例
peach入门