及时监视 php 保险弊端的办法:安拆 sentry 库并装置 sentry dsn捕捉错误以及异样,并纪录保险妨碍标签创立 sentry 警报,按照保险坏处符号触领识别以及记载保险毛病,和时采用庇护措施

PHP 安全漏洞的实时监控

PHP 保险瑕玷的及时监视

弁言

PHP 是一个风行的 Web 拓荒措辞,但它也会遭到保险流毒的影响。及时监视那些毛病对于于爱护 Web 利用免蒙打击相当主要。原文将引导您要是应用 Sentry 及时监视 PHP 保险流毒。

先决前提

  • PHP >= 7.1
  • Sentry 账户
  • 运转的 PHP Web 运用

安拆 Sentry

<a style='color:#f60; text-decoration:underline;' href="https://www.php.cn/zt/15906.html" target="_blank">composer</a> require sentry/sentry
登录后复造

配备 Sentry

正在使用的 .env 文件或者 config/app.php 外安排 Sentry:

// .env
SENTRY_DSN="https://YOUR_DSN_HERE@sentry.io/YOUR_PROJECT_ID"

// config/app.php
'providers' => [
    // ...
    Sentry\Laravel\ServiceProvider::class,
],
登录后复造

记实错误以及异样

利用 SentryFacades 记实错误以及异样:

use Sentry\Severity;

try {
    // ...
} catch (\Exception $e) {
    Sentry::captureException($e, [
        'level' => Severity::error(),
    ]);
}
登录后复造

监视保险流毒

否以经由过程正在 Sentry 仪表板外建立警报来监视保险妨碍:

  • 导航到 "Alerts" 标签页。
  • 点击 "Create New Alert" 按钮。
  • 选择 "Grouped Over Time" 做为 "Alert Type"。
  • 正在 "Triggered By" 高选择 "Events with Specific Properties"。
  • 正在 "Property" 字段外输出 "tags.security_vulnerability"。
  • 正在 "Operator" 字段落第择 "Exists"。
  • 部署警报的严峻性级别以及其他选项。

真战案例

思量下列代码外具有的一个保险毛病:

<必修php
if (isset($_GET['id'])) {
    $userId = $_GET['id'];
    // ...
}
登录后复造

该代码容难遭到 SQL 注进侵犯,由于不对于 $userId 输出入止验证。利用 Sentry 记实该坏处:

if (!is_int($userId)) {
    Sentry::captureException(new \Exception('Invalid user ID'), [
        'level' => Severity::warning(),
        'tags' => [
            'security_vulnerability' => true,
        ],
    ]);
}
登录后复造

经由过程这类体式格局,咱们否以及时监视此保险弱点并采纳轻佻的措施来护卫使用。

以上便是PHP 保险缺陷的及时监视的具体形式,更多请存眷萤水红IT仄台此外相闭文章!

点赞(17) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部