wordfence/exkit

1.0.8 2016-07-26 11:27 UTC

This package is not auto-updated.

Last update: 2024-09-26 03:04:03 UTC


README

ExKit 是 Wordfence 开发的用于概念验证代码的便捷库。它包括常见的操作,如以特定角色登录用户、返回端点路径(例如,admin-ajax.php)、抓取 WP nonces 等。

配置

大多数概念验证将需要对目标主机进行一定程度的自定义。每个概念验证将自动提示所需值,但为了重复测试,创建一个配置文件传递可能很有用,以避免额外的输入。

配置文件是一个简单的单级 JSON 文件。所有常见字段都在 config-sample.json 文件中定义,但概念验证可以根据需要定义自己的。在执行概念验证时使用此文件是通过 --config 命令行选项完成的。语法为 proofofconcept.php --config=/path/to/config.json

可用函数

这只是对可用函数的概述。有关任何其他详细信息,请参阅文档和语法的源代码。

Cli

Cli 类定义了通过控制台获取和发送信息的多个便捷函数。

options

返回在脚本调用时提供的所有选项的预解析关联数组。

write

写入控制台,可选地使用着色。

prompt

提示用户输入值,可选地提供默认值。

Config

Config 类提供了一种统一的接口来获取和存储环境相关值。这包括用户凭据、主机 URL 等等。

useConfigurationFile

将给定文件与存储的值数组合并。

get

返回所需键的值,可选地提示或返回默认值。

set

存储给定键的值。

Endpoint

Endpoint 类提供了一种统一的接口来获取概念验证的常见端点的 URL。如果尚未提供这些值,它将提示这些值。

baseURL

网站的基准 URL。

loginURL

网站的登录 URL。如果尚未知道,则默认为 baseURL + /wp-login.php

adminURL

网站的管理员 URL。如果尚未知道,则默认为 baseURL + /wp-admin/admin.php

adminAjaxURL

网站的管理员 AJAX URL。如果尚未知道,则默认为 baseURL + /wp-admin/admin-ajax.php

adminPostURL

网站的管理员帖子 URL。如果尚未知道,则默认为 baseURL + /wp-admin/admin-post.php

uploadsURL

网站的上传 URL。如果尚未知道,则默认为 baseURL + /wp-content/uploads

url

检查配置中给定的 URL,如果需要,提示用户输入。

ExitCodes

定义了几个退出代码,以确保概念验证使用一组常见的值。

EXIT_CODE_INFORMATIONAL_ONLY

如果仅显示一些信息而不运行漏洞(例如,显示帮助信息),请使用。

EXIT_CODE_EXPLOIT_FAILED

如果漏洞失败,请使用。

EXIT_CODE_EXPLOIT_SUCCEEDED

如果漏洞成功,请使用。

EXIT_CODE_FAILED_PRECONDITION

如果在运行利用程序之前某些先决条件失败时使用(例如,无效的登录凭据)。

EXIT_CODE_VALID_REQUEST_FAILED

如果对有效请求的测试失败时使用。

页面

提供与页面交互的便捷函数。

find

加载指定的页面并将正则表达式应用于响应,返回任何匹配项。

WPAuthentication

提供登录功能。这可能适用于特定用户或适用于具有所需角色的用户。

logInAsUserRole

以具有所需角色的用户登录(调用logInAsUser)。如果没有在配置缓存中找到用户,它将提示输入用户的凭据。

logInAsUser

以给定凭据的用户登录。如果登录失败,它将输出错误并退出,代码为EXIT_CODE_FAILED_PRECONDITION

WPNonce

查找非ces的便捷类。

findOnPage

加载指定的页面并在其中搜索nonce。目前这仅仅是通过应用正则表达式来完成的,但未来的版本可能会采用更智能的方法。