Skip to content

huolongguo1O/AICheckPayload

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AICheckPayload

Check Payload By AI!

1.引入

传统的检测方式很容易漏报/误报,开发者往往不能一次性掌握各种软件的全部特性和所有漏洞,松一些会导致出现漏报或绕过,紧一些(例如过滤全部单引号以防sql注入)会影响体验;而针对每种攻击/poc/exp/漏洞都需要重写代码或者正则表达式,很麻烦。机器学习就能完美解决以上问题。

2.介绍

AICheckPayload旨在利用机器学习识别危险参数,比传统方式更加方便快捷,且能识别潜在的漏洞(在没有针对log4j2的poc5训练的情况下,识别出了log4j2的poc是危险的)。

AICheckPayload是基于bert-base-uncased4(transformer encoder架构)的,tiny版基于bert-tiny。

3.训练

我在kaggle2平台上利用transformers的trainer api完成了训练。

以下是一些训练Tiny3版本的信息:

epoch:3
step:10896
学习率:从5e-5开始下降(AdamW)
数据集:huolongguo10/insecure

下图是loss的情况:

image

4.效果

我们用了一个全新的数据集来检验效果。结果:

7b4c018d147a2d94dfc8f55c849c39b

整体来说,95%的准确率不算很高,但这只是一个初步的训练,微调之后效果可能会更佳。

Tiny3版不但没用降低准确率,反而比原版更高1(多对了一个),且速度更快。

5.问题

测试发现脸滚键盘也会被报insecure,另外只要有大于号或小于号就会报不安全,有待提高。

6.地址

https://huggingface.co/huolongguo10/check_sec_tiny

https://huggingface.co/huolongguo10/check_sec

https://huggingface.co/spaces/huolongguo10/huolongguo10-check_sec

About

Check Payload By AI!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages