正则表达式,也被称为“regex”,是一个用于搜索应用程序在既定情况下显示的信息或消息片段的文本字符串。正则表达式符号模式可能含有字母、数字和特殊字符,如圆点、问号、加号、括号和星号。这些模式不仅指导搜索应用程序搜索何种字符串,还指导它如何进行搜索。
正则表达式在配置扫描活动的过程中十分有用:
正则表达式可能是含有您想要找到直接匹配的字符的简单模式。例如,只有当字符 n、a 和 p 恰好一起出现且处于恰当的序列中时,模式 nap 才能与字符串中的字符组合实现匹配。在此模式上执行的搜索会返回与字符串的匹配,如 snap 和 synapse。在这两种情况中,匹配都带有子字符串 nap。在字符串 an aperture 中没有匹配,因为它不含子字符串 nap。
当搜索需要一个结果而非直接匹配时(如一个或多个 n,或者空格),模式就需要使用特殊字符。例如,模式 ab*c 可以匹配任何在单个 a 后面带有 0 个或多个 b 并紧跟 c 的字符组合。星号表示前面的字符出现 0 次或多次。在字符串 cbbabbbbcdebc 中,模式能够匹配子字符串 abbbbc。
星号是一个告诉您如何使用特殊字符修改搜索的例子。使用其他单个的和组合的特殊字符,您可以创建各种类型的搜索参数。
Nexpose 通过对比搜索字符串和整个目录路径及文件名称来搜索匹配文件。请参见在目标系统配置文件搜索。如果存在任何针对搜索模式的贪婪匹配,则文件和目录会在结果表格中出现。如果您没有加入正则表达式锚(如 ^ 和 $),则搜索结果可能会出现多个匹配。请参见下方示例,以进一步了解搜索算法如何使用正则表达式。请注意,搜索匹配以粗体显示。
带有搜索模式 .*xls
C$/Documents and Settings/user/My Documents/patientData.xls
一个匹配结果:
C$/Documents and Settings/user/My Documents/patientData.xls
C$/Documents and Settings/user/My Documents/patientData.doc
无匹配结果
C$/Documents and Settings/user/My Documents/xls/patientData.xls
一个匹配结果:
C$/Documents and Settings/user/My Documents/xls/patientData.xls
C$/Documents and Settings/user/My Documents/xls/patientData.doc
一个匹配结果:
C$/Documents and Settings/user/My Documents/xls/patientData.doc
带有搜索模式 ^.*xls$:
C$/Documents and Settings/user/My Documents/patientData.xls
一个匹配结果:
C$/Documents and Settings/user/My Documents/patientData.xls
C$/Documents and Settings/user/My Documents/patientData.doc 无匹配结果
当 Nexpose 尝试登录网络应用成功时,网络服务器会返回一个 HTML 页面,用户通常会在成功登录后看到此页面。如果尝试登录失败,则网络服务器会返回一个带有失败消息的 HTML 页面,如“无效密码”。
使用 HTML 表格或 HTTP 标题配置应用程序登录网络应用需要为失败消息指定一个正则表达式。在登录过程中,它会尝试对照 HTML 页面匹配正则表达式和失败消息。如果存在匹配,则应用程序会识别出尝试失败。然后,它会在扫描日志和安全控制台网页界面中显示失败通知。如果不存在匹配,则应用程序会识别出尝试成功并处理扫描。