Skip to content

Commit 4ca5ad3

Browse files
committed
Add PoC workflow to demonstrate RCE in pushCodeFiles
1 parent 025314d commit 4ca5ad3

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

.github/workflows/poc-rce.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: PoC RCE Demonstration
2+
on:
3+
pull_request:
4+
branches: [ master ]
5+
jobs:
6+
build:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v4
10+
- name: Set up Node.js
11+
uses: actions/setup-node@v4
12+
with:
13+
node-version: '12'
14+
- name: Install dependencies
15+
16+
- name: Debug environment
17+
run: |
18+
echo "Node version:"
19+
node --version
20+
echo "NPM packages:"
21+
npm list gulp gulp-shell gulp-zip babel-register
22+
echo "Package version:"
23+
node -p "require('./package.json').version"
24+
- name: Run vulnerable Gulp task
25+
run: |
26+
echo "Running gulp pushCodeFiles with version: $(node -p "require('./package.json').version")"
27+
npx gulp pushCodeFiles || echo "Gulp task failed (expected if gsutil missing); check for RCE output above"
28+
- name: Check for proof file
29+
run: |
30+
if [ -f /tmp/rce_proof.txt ]; then
31+
echo "Proof file found:"
32+
cat /tmp/rce_proof.txt
33+
else
34+
echo "No proof file found (sandbox restriction)"
35+
fi
36+
- name: Upload proof artifact
37+
uses: actions/upload-artifact@v4
38+
with:
39+
name: rce-proof
40+
path: /tmp/rce_proof.txt

0 commit comments

Comments
 (0)