Posted @ 10:57 pm August 14th, 2007
晚上在公司发现一个bug -- vulnerability case 跟踪系统中的nbtscanner记录到数据库中的数据有错误. 坐下来跟踪调试, 发现在存入数据库的时候就有问题了, 因为是调用外部程序, 没法继续跟踪, 遂打印出来对比, 发现直接输出的文本中是ok的. 难道调用外部程序的时候有问题?? 继续从内存里面dump出来, 发现dump出来也是好的...
奇怪了... 然后再拿着错误数据分析, 终于看出点眉目来了... 原来是用正则表达式匹配的时候最后一位没有做位数限定, 默认取1了...
这是原始的IP正则匹配:
[0-9]+\.[0-9]+\.[0-9]+\.[0-9]
这是修正后的:
[0-9]+\.[0-9]+\.[0-9]+\.[0-9]*
Leave a Reply



