# 5. Security Assessments

Security Assessments or Penetration testing is the practice of simulating attacks on a system or application to uncover security weaknesses:

1. **Black Box**: The tester has no prior knowledge of the system.
2. **White Box**: The tester has detailed knowledge of the system.
3. **Gray Box**: Some knowledge is provided, but not full.

##### Use Cases 

1. **Black Box Testing:** External testers find a login vulnerability. The team patches the issue and retests for confirmation.
2. **White Box Testing:** Full system knowledge reveals code injection risks. Developers implement code fixes and resolve the report.
3. **Gray Box Testing:** Limited access tests expose endpoint vulnerabilities. Engineers secure the endpoints and log retesting results.
4. **Retesting After Fixes:** Vulnerabilities are fixed post-penetration test. Follow-up tests are conducted to ensure no further risks remain.

<p class="callout info">Pen testers document discovered vulnerabilities and exploitation paths. In the system, you’d log each test (or each portion of a test) as a Penetration Report, noting the Name and any steps or results in the Description. Security teams typically use it to confirm that known vulnerabilities are patched and no new ones have appeared.</p>

<article class="text-token-text-primary w-full" data-scroll-anchor="true" data-testid="conversation-turn-378" dir="auto" id="bkmrk-table-view-total%3A-%28t">##### Table View

<div class="text-base my-auto mx-auto py-5 [--thread-content-margin:--spacing(4)] @[37rem]:[--thread-content-margin:--spacing(6)] @[72rem]:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)"><div class="[--thread-content-max-width:32rem] @[34rem]:[--thread-content-max-width:40rem] @[64rem]:[--thread-content-max-width:48rem] mx-auto flex max-w-(--thread-content-max-width) flex-1 text-base gap-4 md:gap-5 lg:gap-6 group/turn-messages focus-visible:outline-hidden" tabindex="-1"><div class="group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn"><div class="relative flex-col gap-1 md:gap-3"><div class="flex max-w-full flex-col grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&]:mt-5" data-message-author-role="assistant" data-message-id="57020de2-824b-486d-b246-df3014981818" data-message-model-slug="o4-mini-high" dir="auto"><div class="flex w-full flex-col gap-1 empty:hidden first:pt-[3px]"><div class="markdown prose dark:prose-invert w-full break-words light">1. **Total:** (top-left) shows how many penetration reports exist.
2. **Search…** quickly filters by any term in the **Name** or **Description**.
3. **+ Add** (top-right) opens the “Add penetration report” form.

</div></div></div></div></div></div></div></div><table class="w-fit min-w-(--thread-content-width)" data-end="1163" data-start="514" style="width: 98.5714%; height: 178.781px;"><thead data-end="599" data-start="514"><tr data-end="599" data-start="514" style="height: 29.7969px;"><th data-col-size="sm" data-end="537" data-start="517" style="width: 14.5143%; height: 29.7969px;">Column</th><th data-col-size="md" data-end="599" data-start="537" style="width: 85.4728%; height: 29.7969px;">Details</th></tr></thead><tbody data-end="1163" data-start="687"><tr data-end="816" data-start="687" style="height: 29.7969px;"><td data-col-size="sm" data-end="712" data-start="691" style="width: 14.5143%; height: 29.7969px;">**Name** ⇅</td><td data-col-size="md" data-end="816" data-start="712" style="width: 85.4728%; height: 29.7969px;">Title of the test (e.g. “Denial of Service,” “Open Redirect”). Clicking the link opens full details.</td></tr><tr data-end="903" data-start="817" style="height: 29.7969px;"><td data-col-size="sm" data-end="841" data-start="821" style="width: 14.5143%; height: 29.7969px;">**Description**</td><td data-col-size="md" data-end="903" data-start="841" style="width: 85.4728%; height: 29.7969px;">One-line summary of what was tested or discovered.</td></tr><tr><td style="width: 14.5143%;">**File**</td><td style="width: 85.4728%;">Uploaded assessment file (e.g. penetration test report or supporting document), downloadable directly from the table.

</td></tr><tr data-end="990" data-start="904" style="height: 29.7969px;"><td data-col-size="sm" data-end="928" data-start="908" style="width: 14.5143%; height: 29.7969px;">**Project**</td><td data-col-size="md" data-end="990" data-start="928" style="width: 85.4728%; height: 29.7969px;">Link to the related project or environment.</td></tr><tr data-end="1077" data-start="991" style="height: 29.7969px;"><td data-col-size="sm" data-end="1015" data-start="995" style="width: 14.5143%; height: 29.7969px;">**Created at** ⇅</td><td data-col-size="md" data-end="1077" data-start="1015" style="width: 85.4728%; height: 29.7969px;">Date and time when the report was logged.</td></tr><tr data-end="1163" data-start="1078" style="height: 29.7969px;"><td data-col-size="sm" data-end="1102" data-start="1082" style="width: 14.5143%; height: 29.7969px;">**Actions**</td><td data-col-size="md" data-end="1163" data-start="1102" style="width: 85.4728%; height: 29.7969px;">✏️ Edit</td></tr></tbody></table>

</article>There’s no built-in delete option for penetration reports—entries are archived by editing or by policy.

<article class="text-token-text-primary w-full" data-scroll-anchor="true" data-testid="conversation-turn-378" dir="auto" id="bkmrk-penetration-reports-">> **Penetration Reports – Clickable Name**  
> In the Table view for Penetration Reports, the **Name** column entries are clickable. Clicking any Name opens the full-width **View Penetration Report** drawer, showing that report’s Name, Description, Created at timestamp.

##### Viewing Linked Violation Reports

You can now see which Violation Reports were raised as a result of each penetration test—right in the Penetration Reports table.

**Expand the row:** In the leftmost column of any report row, click the ▼ arrow.

**Review associated violations:** A sub-row appears listing each Violation Report linked to that Pen test (with Title, Status, and Date).  
Click a Violation Report title to open its detail panel.

**No linked violations?** You’ll see “No data to display” if no Violation Reports are attached yet.

##### Adding a Penetration Report

1\. Click **+ Add**.  
2\. In **Add penetration report**:  
**-Name:** Enter a clear title for the engagement.  
**-Description:** Summarize the scope and key findings.  
**-Project:** Select the associated project.  
**-Attached files:** Drag an image or browse to upload one or more PDF documents (e.g. your full pen-test report).  
3\. Click **Save**. Your new report appears in the table.

##### Editing a Penetration Report

Click the ✏️ icon under **Actions**.  
In the **Edit penetration report** panel, update the **Name**, **Description**, or **Project**.  
**Attached files:** Drag an image or browse to upload additional PDFs or replace existing attachments.  
Click **Save** to apply changes.

##### Typical Workflow

**Pen Test Execution:** Security team or external vendor runs tests (e.g., vulnerability scans, manual exploitation, stress tests).  
**Report Logging:** Each test campaign is logged with a **Name** and **Description** of findings (e.g., “SQL injection found in search endpoint”).  
**Review &amp; Action:** Security engineers review findings, tag them to development/ops teams, and track fixes.

Once remediated, tests may be rerun and the report updated to reflect the final status.

<div class="text-base my-auto mx-auto py-5 [--thread-content-margin:--spacing(4)] @[37rem]:[--thread-content-margin:--spacing(6)] @[72rem]:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)"><div class="[--thread-content-max-width:32rem] @[34rem]:[--thread-content-max-width:40rem] @[64rem]:[--thread-content-max-width:48rem] mx-auto flex max-w-(--thread-content-max-width) flex-1 text-base gap-4 md:gap-5 lg:gap-6 group/turn-messages focus-visible:outline-hidden" tabindex="-1"><div class="group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn"><div class="relative flex-col gap-1 md:gap-3"><div class="flex max-w-full flex-col grow"><div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&]:mt-5" data-message-author-role="assistant" data-message-id="57020de2-824b-486d-b246-df3014981818" data-message-model-slug="o4-mini-high" dir="auto"><div class="flex w-full flex-col gap-1 empty:hidden first:pt-[3px]"><div class="markdown prose dark:prose-invert w-full break-words light">  
</div></div></div></div></div></div></div></div></article>