我正在尝试使用antlr4(+python3 3)来检测sql注入,现在我已经得到后端SQL命令"SELECT * FROM WHERE BBB = ''",以及用户的输入"CCC“。
现在,解析树看起来如下所示:

我的问题是,我能否将"CCC“(用户的输入)直接匹配到子树”谓词“(见上图),即在”谓词“处输入解析树?
我有几个想法:
之前的节点。
这些思想是复杂的,那么我应该在现有的文献中寻找什么呢?或者其他建议?
发布于 2020-11-13 12:54:07
之前的节点。
当然可以:当遍历解析树并遇到用户输入时,只需“遍历”节点,直到遇到感兴趣的节点。在遍历解析树时,ANTLR将为您提供当前的解析上下文。这个上下文有一个parent上下文,您可以使用它“遍历”到树上。
https://stackoverflow.com/questions/64818108
复制相似问题