Skip to content
Dashboard

Our $1 million hacker challenge for React2Shell

CTO, Vercel

Link to headingWhat we are defending against

{
0: {
status: "resolved_model",
reason: 0,
_response: {
_prefix: "console.log('☠️')//",
_formData: {
get: "$1:then:constructor",
},
},
then: "$1:then",
value: '{"then":"$B"}',
},
1: "$@0",
}

Example PoC of the React2Shell exploit

Blocked exploit attempts in the first 72 hours after public disclosureBlocked exploit attempts in the first 72 hours after public disclosureBlocked exploit attempts in the first 72 hours after public disclosureBlocked exploit attempts in the first 72 hours after public disclosure
Blocked exploit attempts in the first 72 hours after public disclosure
Blocked exploit attempts over the following weekBlocked exploit attempts over the following weekBlocked exploit attempts over the following weekBlocked exploit attempts over the following week
Blocked exploit attempts over the following week

Link to headingThe $50k bounty

Link to headingSeawall: Hardening our WAF

Link to headingAdding to our defense-in-depth strategy

Link to headingStopping the most sophisticated bypasses

Link to headingRecursive UTF encoding

Link to headingAccessing constructor without the colon

Link to headingHelping customers upgrade: Security as a product experience

Link to headingLooking ahead

Link to headingCredits