> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/de/windows-vulnerabilities/scheduled-tasks.md).

# Windows-Geplante Aufgaben

Geplante Aufgaben sind nützliche Ziele für Privilegieneskalation, wenn Automatisierung unter einem privilegierten Konto ausgeführt wird, aber einen Datei-, Skript- oder Befehls-Pfad ausführt, den ein Benutzer mit geringeren Rechten ändern kann.

## Enumeration

Beginnen Sie mit der Ausgabe des integrierten Aufgabenplaners:

```cmd
schtasks /query /fo LIST /v
```

PowerShell erleichtert die Überprüfung von Aufgabenaktionen:

```powershell
Get-ScheduledTask |
  ForEach-Object {
    [PSCustomObject]@{
      TaskName = $_.TaskName
      TaskPath = $_.TaskPath
      State = $_.State
      Author = $_.Author
      Actions = ($_.Actions | ForEach-Object { $_.Execute + " " + $_.Arguments }) -join "; "
    }
  }
```

## Was eine Aufgabe interessant macht

Achten Sie auf Aufgaben, bei denen:

* Die Aufgabe läuft als `SYSTEM`, ein Administrator oder ein Dienstkonto.
* Die Aktion verweist auf ein Skript oder eine ausführbare Datei außerhalb geschützter Windows-Pfade.
* Die Zieldatei oder eines ihrer übergeordneten Verzeichnisse ist schreibbar.
* Argumente enthalten Anmeldeinformationen, Netzwerkpfade, Tokens oder API-Schlüssel.
* Die Aufgabe kann manuell ausgelöst werden, läuft häufig oder wird bei der Benutzeranmeldung ausgeführt.

## Prüfen Sie den Zielpfad

Nachdem Sie die von der Aufgabe verwendete ausführbare Datei oder das Skript identifiziert haben, überprüfen Sie die Berechtigungen.

```cmd
icacls "C:\Path\To\task-script.ps1"
icacls "C:\Path\To"
```

```powershell
Get-Acl "C:\Path\To\task-script.ps1" | Format-List
```

Schreibbare Gruppen wie `Benutzer`, `Authenticated Users`oder `Everyone` sind verdächtig, wenn die Aufgabe mit erhöhten Rechten läuft.

## Sicher validieren

Verwenden Sie zuerst eine harmlose Markierung, damit Sie den Ausführungskontext nachweisen, ohne den geplanten Ablauf zu beeinträchtigen.

```powershell
'whoami > C:\Windows\Temp\task-check.txt' | Out-File -Encoding ASCII C:\Path\To\task-script.ps1
```

Lösen Sie die Aufgabe aus, wenn Ihr Benutzer dazu berechtigt ist:

```cmd
schtasks /run /tn "\Task\Name"
type C:\Windows\Temp\task-check.txt
```

Wenn Sie sie nicht manuell auslösen können, notieren Sie die nächste Ausführungszeit:

```cmd
schtasks /query /tn "\Task\Name" /fo LIST /v
```

## Hinweise auf Anmeldeinformationen

Aufgaben können Geheimnisse über Befehlsargumente oder gemappte Netzwerkpfade offenlegen.

```cmd
schtasks /query /fo LIST /v | findstr /i "password user runas /ru /rp \\\\"
```

```powershell
Get-ScheduledTask |
  Select-Object -ExpandProperty Actions |
  Select-String -Pattern 'password|passwd|pwd|token|secret|\\\\'
```

## Bereinigung

Stellen Sie nach dem Testen die ursprüngliche Zieldatei wieder her und entfernen Sie temporäre Markierungen.

```cmd
del C:\Windows\Temp\task-check.txt
```

## Wichtige Punkte

* Das Aufgabenkonto und die Zielberechtigungen sind wichtiger als der Aufgabenname.
* Ein schreibbares Skript lässt sich in der Regel sauberer validieren als das Ersetzen einer Binärdatei.
* Beweismaterial erfassen: Aufgabenname, Ausführungskonto, Aktionspfad, ACL-Ausgabe und Auslösebedingung.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/de/windows-vulnerabilities/scheduled-tasks.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
