Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 71 additions & 0 deletions .github/workflows/apisec-scan.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# APIsec addresses the critical need to secure APIs before they reach production.
# APIsec provides the industry’s only automated and continuous API testing platform that uncovers security vulnerabilities and logic flaws in APIs.
# Clients rely on APIsec to evaluate every update and release, ensuring that no APIs go to production with vulnerabilities.

# How to Get Started with APIsec.ai
# 1. Schedule a demo at https://www.apisec.ai/request-a-demo .
#
# 2. Register your account at https://cloud.apisec.ai/#/signup .
#
# 3. Register your API . See the video (https://www.youtube.com/watch?v=MK3Xo9Dbvac) to get up and running with APIsec quickly.
#
# 4. Get GitHub Actions scan attributes from APIsec Project -> Configurations -> Integrations -> CI-CD -> GitHub Actions
#
# apisec-run-scan
#
# This action triggers the on-demand scans for projects registered in APIsec.
# If your GitHub account allows code scanning alerts, you can then upload the sarif file generated by this action to show the scan findings.
# Else you can view the scan results from the project home page in APIsec Platform.
# The link to view the scan results is also displayed on the console on successful completion of action.

# This is a starter workflow to help you get started with APIsec-Scan Actions

name: APIsec

# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the "main" branch
# Customize trigger events based on your DevSecOps processes.
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '29 1 * * 2'

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:


permissions:
contents: read

jobs:

Trigger_APIsec_scan:
permissions:
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
runs-on: ubuntu-latest

steps:
- name: APIsec scan
uses: apisec-inc/apisec-run-scan@025432089674a28ba8fb55f8ab06c10215e772ea
with:
# The APIsec username with which the scans will be executed
apisec-username: ${{ secrets.apisec_username }}
# The Password of the APIsec user with which the scans will be executed
apisec-password: ${{ secrets.apisec_password}}
# The name of the project for security scan
apisec-project: "VAmPI"
Copy link

Copilot AI Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hardcoded project name 'VAmPI' appears to be from the workflow template/example and does not correspond to this project (@ghostery/trackerdb). This will cause the workflow to scan the wrong project or fail if the VAmPI project doesn't exist in the APIsec account.

Suggested change
apisec-project: "VAmPI"
apisec-project: "trackerdb"

Copilot uses AI. Check for mistakes.
# The name of the sarif format result file The file is written only if this property is provided.
sarif-result-file: "apisec-results.sarif"
- name: Import results
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: ./apisec-results.sarif
54 changes: 54 additions & 0 deletions .github/workflows/appknox.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# This workflow uses actions that are not certified by GitHub. They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support documentation.
#
# Appknox: Leader in Mobile Application Security Testing Solutions <https://www.appknox.com/>
#
# To use this workflow, you must be an existing Appknox customer with GitHub Advanced Security (GHAS) enabled for your
# repository.
#
# If you *are not* an existing customer, click here to contact us for licensing and pricing details:
# <https://www.appknox.com/free-trial>.
#
# Instructions:
#
# 1. In your repository settings, navigate to 'Secrets' and click on 'New repository secret.' Name the
# secret APPKNOX_ACCESS_TOKEN and paste your appknox user token into the value field. If you don't have a appknox token
# or need to generate a new one for GitHub, visit the Appknox Platform, go to Account Settings->Developer Settings
# and create a token labeled GitHub
#
# 2. Refer to the detailed workflow below, make any required adjustments, and then save it to your repository. After the
# action executes, check the 'Security' tab for results

name: Appknox

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
appknox:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4

- name: Grant execute permission for gradlew
run: chmod +x gradlew

- name: Build the app
run: ./gradlew build # Update this to build your Android or iOS application

- name: Appknox GitHub action
uses: appknox/appknox-github-action@b7d2bfb2321d5544e97bffcba48557234ab953a4
with:
appknox_access_token: ${{ secrets.APPKNOX_ACCESS_TOKEN }}
file_path: app/build/outputs/apk/debug/app-debug.apk # Specify the path to your .ipa or .apk here
Copy link

Copilot AI Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This workflow references a non-existent APK file path. This is a Node.js library that does not produce .apk or .ipa files. The Appknox workflow is designed for mobile app security testing and is not applicable to this project.

Copilot uses AI. Check for mistakes.
risk_threshold: MEDIUM # Update this to desired risk threshold [LOW, MEDIUM, HIGH, CRITICAL]
sarif: Enable

Comment on lines +36 to +49
Copy link

Copilot AI Oct 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This workflow attempts to build a mobile application using gradlew, but this is a Node.js/TypeScript library project without any Gradle build files or mobile app components. The workflow will fail at line 37 as gradlew does not exist in this repository.

Suggested change
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build the app
run: ./gradlew build # Update this to build your Android or iOS application
- name: Appknox GitHub action
uses: appknox/appknox-github-action@b7d2bfb2321d5544e97bffcba48557234ab953a4
with:
appknox_access_token: ${{ secrets.APPKNOX_ACCESS_TOKEN }}
file_path: app/build/outputs/apk/debug/app-debug.apk # Specify the path to your .ipa or .apk here
risk_threshold: MEDIUM # Update this to desired risk threshold [LOW, MEDIUM, HIGH, CRITICAL]
sarif: Enable
- name: Install dependencies
run: npm ci
- name: Build the project
run: npm run build
# Update the following Appknox step as needed for your project.
# If you do not produce a mobile app artifact (apk/ipa), you may need to remove or adjust this step.
# - name: Appknox GitHub action
# uses: appknox/appknox-github-action@b7d2bfb2321d5544e97bffcba48557234ab953a4
# with:
# appknox_access_token: ${{ secrets.APPKNOX_ACCESS_TOKEN }}
# file_path: <path-to-your-artifact> # Specify the path to your .ipa or .apk here, or remove if not applicable
# risk_threshold: MEDIUM # Update this to desired risk threshold [LOW, MEDIUM, HIGH, CRITICAL]
# sarif: Enable

Copilot uses AI. Check for mistakes.
- name: Upload SARIF to GHAS
if: always()
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: report.sarif
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ghostery/trackerdb",
"version": "1.0.667",
"version": "1.0.668",
"description": "Ghostery Tracker Database",
"type": "module",
"scripts": {
Expand Down