mirror of
https://github.com/elicpeter/nyx.git
synced 2026-06-21 20:18:06 +02:00
[pitboss] phase 21: Track M.3 — ScheduledJob + GraphQLResolver + WebSocket + Middleware + Migration
This commit is contained in:
parent
00b0fbaea9
commit
f9bd51c024
84 changed files with 5898 additions and 40 deletions
13
tests/dynamic_fixtures/migration/laravel/benign.php
Normal file
13
tests/dynamic_fixtures/migration/laravel/benign.php
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
// Phase 21 — Laravel migration benign control.
|
||||
// use Illuminate\\Database\\Migrations\\Migration;
|
||||
|
||||
class AddUsers {
|
||||
public function up() {
|
||||
$col = getenv('NYX_PAYLOAD') ?: 'email';
|
||||
$safe = preg_replace('/[^A-Za-z0-9_]/', '_', $col);
|
||||
$stmt = "ALTER TABLE users ADD COLUMN " . $safe . " TEXT";
|
||||
echo "LARAVEL_SQL: " . $stmt . "\n";
|
||||
return $stmt;
|
||||
}
|
||||
}
|
||||
25
tests/dynamic_fixtures/migration/laravel/vuln.php
Normal file
25
tests/dynamic_fixtures/migration/laravel/vuln.php
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
<?php
|
||||
// Phase 21 (Track M.3) — Laravel migration vuln fixture.
|
||||
//
|
||||
// `AddUsers::up()` invokes `Schema::table` via a class-static
|
||||
// fallthrough but splices a tainted column name into a raw
|
||||
// `DB::statement` call.
|
||||
|
||||
// use Illuminate\\Database\\Migrations\\Migration;
|
||||
// use Illuminate\\Database\\Schema;
|
||||
|
||||
class AddUsers {
|
||||
public function up() {
|
||||
$col = getenv('NYX_PAYLOAD') ?: 'email';
|
||||
// SINK: tainted column name concatenated into raw DDL.
|
||||
$stmt = "ALTER TABLE users ADD COLUMN " . $col . " TEXT";
|
||||
DBStatementWrapper::statement($stmt);
|
||||
return $stmt;
|
||||
}
|
||||
}
|
||||
|
||||
class DBStatementWrapper {
|
||||
public static function statement($sql) {
|
||||
echo "LARAVEL_SQL: " . $sql . "\n";
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue