Back to skill

Security audit

Google Ads Strategy: Search Campaigns, Keywords, Ad Copy, Negative Keywords, Quality Score

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly normal Google Ads guidance, but it defaults to local AdKit CLI execution for campaign uploads, creation, and publishing without clearly requiring user confirmation for high-impact ad-account changes.

Review before installing if you do not want a skill that may use a local AdKit CLI for Google Ads operations. Require explicit approval before any keyword upload, campaign creation, ad publishing, budget change, or customer-data sharing such as Enhanced Conversions.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (8)

Whitespace Padding

Medium
Category
Prompt Injection
Content
## Campaign Types — B2B SaaS

| Campaign       | What it targets                    | Notes                                                                                     |
| -------------- | ---------------------------------- | ----------------------------------------------------------------------------------------- |
| **Brand**      | Your brand name + variants         | Bid even if you rank organically — competitors will otherwise serve above your result. Cheapest click in the account. |
| **Competitor** | Named competitor terms             | Requires comparison landing pages. Separate budget and bidding from solution campaigns.   |
Confidence
70% confidence
Finding
Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Whitespace Padding

Medium
Category
Prompt Injection
Content
## Match Type Decision Table

| Scenario                                                  | Match type                                  | Why                                                                                      |
| --------------------------------------------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------- |
| Budget under $10K/month                                   | Exact + Phrase only                         | Not enough data for broad match to learn. Every wasted dollar hurts.                    |
| Under 30 conversions/month                                | Exact + Phrase only                         | Broad match needs 30+ conversions/month minimum to optimize.                            |
Confidence
70% confidence
Finding
Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Whitespace Padding

Medium
Category
Prompt Injection
Content
Add all of these before launching. Google uses them to fill ad space and improve CTR.

| Asset               | Guidance                                                                                                                    |
| ------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| **Sitelinks**       | Add beyond the display cap (6 desktop / 8 mobile) — Google selects the most relevant. Exception: limit to 2 for max-promotion pinning strategy. |
| **Callouts**        | ≤ 25 chars each, not clickable. Specific and credible ("SOC 2 Type II", "14-day free trial"). Not vague fluff ("Best in class"). |
Confidence
70% confidence
Finding
Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Natural-Language Policy Violations

Medium
Confidence
89% confidence
Finding
Lines L069-L073 instruct users to add language terms as negative keywords to block searches from certain languages. This imposes a language-based exclusion policy in natural-language guidance without offering user choice or documenting a region-specific compliance/business justification, which fits the language/locale policy violation criteria.

Shadow Command Trigger

Medium
Category
Trigger Abuse
Confidence
70% confidence
Finding
Shadow Command Trigger: 'search ads' conflicts with built-in command 'search'

Description-Behavior Mismatch

Medium
Confidence
92% confidence
Finding
The manifest and description frame the skill as planning and optimization guidance, but this section routes the agent into local AdKit-based execution and campaign operations. That mismatch can mislead users and orchestration systems about the skill's actual capabilities, increasing the chance of unexpected command execution or external side effects.

Context-Inappropriate Capability

Medium
Confidence
95% confidence
Finding
The skill is presented as advisory guidance for Google Ads strategy, but it instructs the agent to execute a local command (`adkit status`) to probe the host environment. That expands behavior from analysis into system interaction without clear user authorization or necessity, creating unnecessary exposure to local-environment access and tool-execution risks.

Missing User Warnings

Low
Confidence
83% confidence
Finding
This markdown skill directs users to use competitor reviews and competitor landing pages as inputs, which can involve collecting and processing third-party content. The document provides no user-facing warning or caveat about responsible handling, platform restrictions, or privacy implications, despite describing data-gathering behavior.

Static analysis

No suspicious patterns detected.