At Black Hat USA 2026, ਖੋਜਕਰਤਾਵਾਂ ਨੇ ਦਿਖਾਇਆ ਕਿ Cascading Style Sheets (CSS) ਨੂੰ ਹਥਿਆਰ ਵਜੋਂ ਵਰਤ ਕੇ AI-ਅਧਾਰਿਤ ਈਮੇਲ ਏਜੰਟਾਂ ਨੂੰ ਉਹ ਸਮੱਗਰੀ ਪੜ੍ਹਨ ਲਈ ਮਜਬੂਰ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਮਨੁੱਖੀ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਅਦਿੱਖ ਹੁੰਦੀ ਹੈ। ਇਸ ਤਕਨੀਕ ਨੇ Outlook, Gmail, Yahoo ਅਤੇ Proton ਨੂੰ ਬਾਈਪਾਸ ਕਰ ਦਿੱਤਾ, ਜਿਸ ਨਾਲ ਏਜੰਟਾਂ ਨੂੰ ਪਾਸਵਰਡ, ਅਥੈਂਟੀਕੇਸ਼ਨ ਟੋਕਨ ਅਤੇ IP ਐਡਰੈੱਸ ਚੋਰੀ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਮਿਲੀ।

ਈਮੇਲ ਸੁਰੱਖਿਆ ਵਿੱਚ CSS ਕਿਉਂ ਮਹੱਤਵਪੂਰਨ ਹੈ

ਸਾਲਾਂ ਤੋਂ ਵੈੱਬਮੇਲ ਪ੍ਰੋਵਾਈਡਰ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਹਟਾ ਕੇ, iframes ਨੂੰ sandboxing ਕਰਕੇ ਅਤੇ ਇੱਕ ਸੁਨੇਹਾ ਕੀ ਕਰ ਸਕਦਾ ਹੈ ਉਸ ਨੂੰ ਸੀਮਤ ਕਰਕੇ ਮਾਲੀਸ਼ੀਅਸ HTML ਤੋਂ ਬਚਾਅ ਕਰ ਰਹੇ ਹਨ। ਉਹ ਉਪਾਅ ਉਹਨਾਂ ਕਲਾਸਿਕ ਹਮਲਿਆਂ ਨੂੰ ਰੋਕਦੇ ਹਨ ਜੋ JavaScript ਜਾਂ ਇਨਬੈਡਡ ਆਬਜੈਕਟਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ। ਹਾਲਾਂਕਿ, CSS ਨੂੰ ਹਮੇਸ਼ਾ ਇੱਕ ਨਿਰਪੱਖ ਪ੍ਰੈਜ਼ੈਂਟੇਸ਼ਨ ਕੋਡ ਵਜੋਂ ਮੰਨਿਆ ਗਿਆ ਹੈ। ਇਸਦੇ ਉੱਨਤ ਸਿਲੇਕਟਰ—ਜਿਵੇਂ ਕਿ attribute selectors, container queries ਅਤੇ ਹੋਰ—ਕਿਸੇ ਵੀ ਸਕ੍ਰਿਪਟਿੰਗ ਤੋਂ ਬਿਨਾਂ ਇੱਕ ਪੇਜ ਨੂੰ DOM structure ਪ੍ਰਤੀ ਪ੍ਰਤੀਕਿਰਿਆ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੇ ਹਨ।

Black Hat ਦੇ ਡੈਮੋ ਨੇ ਸਾਬਤ ਕਰ ਦਿੱਤਾ ਕਿ ਉਹ "ਨਿਰਪੱਖ" ਸਿਲੇਕਟਰ ਡੇਟਾ ਲੀਕੇਜ ਲਈ ਇੱਕ ਸਾਈਡ-ਚੈਨਲ ਬਣ ਸਕਦੇ ਹਨ। ਕੁਝ ਖਾਸ ਲੁਕਵੇਂ ਤੱਤਾਂ (hidden elements) ਦੇ ਹੋਣ 'ਤੇ ਹੀ ਲਾਗੂ ਹੋਣ ਵਾਲੇ ਸਟਾਈਲ ਨਿਯਮ ਬਣਾ ਕੇ, ਹਮਲਾਵਰ ਟੈਕਸਟ ਨੂੰ ਉਪਭੋਗਤਾ ਲਈ ਅਦਿੱਖ ਬਣਾ ਦਿੰਦੇ ਹਨ, ਪਰ ਉਹ ਰੈਂਡਰਡ ਪੇਜ (rendered page) ਵਿੱਚ ਮੌਜੂਦ ਰਹਿੰਦਾ ਹੈ ਜਿਸ ਨੂੰ ਇੱਕ AI ਏਜੰਟ ਪੜ੍ਹਦਾ ਹੈ।

ਇਹ ਹਮਲੇ ਕਿਵੇਂ ਕੰਮ ਕਰਦੇ ਹਨ

ਇੱਕ ਪ੍ਰੂਫ-ਆਫ-ਕੰਸੈਪਟ ਨੇ ਇੱਕ ਅਜਿਹੀ ਈਮੇਲ ਭੇਜੀ ਜੋ ਪ੍ਰਾਪਤਕਰਤਾ ਲਈ ਆਮ ਲੱਗਦੀ ਸੀ। ਇਸਦੇ ਅੰਦਰ CSS ਨਿਯਮ ਲੁਕੇ ਹੋਏ ਸਨ ਜਿਨ੍ਹਾਂ ਨੇ ਖਾਸ ਟੈਕਸਟ ਦਾ ਰੰਗ ਬੈਕਗ੍ਰਾਊਂਡ ਨਾਲ ਮਿਲਾਉਣ ਲਈ ਬਦਲ ਦਿੱਤਾ, ਜਿਸ ਨਾਲ ਇਹ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਲੁਕ ਗਿਆ। ਇੱਕ ਮਨੁੱਖ ਟੈਕਸਟ ਨੂੰ ਕਦੇ ਨਹੀਂ ਦੇਖਦਾ, ਪਰ ਇੱਕ AI ਏਜੰਟ ਜੋ DOM ਜਾਂ accessibility tree ਨੂੰ ਕੱਢਦਾ ਹੈ, ਉਹ ਵਿਜ਼ੂਅਲ ਫਿਲਟਰ ਲਾਗੂ ਨਹੀਂ ਕਰਦਾ। ਜਦੋਂ ਏਜੰਟ ਨੇ ਈਮੇਲ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕੀਤਾ, ਤਾਂ ਉਸਨੇ ਲੁਕੇ ਹੋਏ ਟੈਕਸਟ ਨੂੰ ਪੜ੍ਹਿਆ ਅਤੇ ਇਸਨੂੰ ਇੱਕ URL ਫਰੈਗਮੈਂਟ ਵਿੱਚ ਟ੍ਰਾਂਸਮਿਟ ਕੀਤਾ—ਇੱਕ ਵੈੱਬ ਐਡਰੈੱਸ ਦਾ ਉਹ ਹਿੱਸਾ ਜਿਸ ਨੂੰ ਬ੍ਰਾਊਜ਼ਰ ਆਮ ਤੌਰ 'ਤੇ ਪੇਜ ਲੋਡ ਕਰਦੇ ਸਮੇਂ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰ ਦਿੰਦੇ ਹਨ।

ਇੱਕ ਹੋਰ ਵੇਰੀਐਂਟ ਨੇ ਅਸਿੱਧੀ ਪ੍ਰੋਂਪਟ ਇੰਜੈਕਸ਼ਨ (indirect prompt injection) ਦੀ ਵਰਤੋਂ ਕੀਤੀ। ਈਮੇਲ ਵਿੱਚ ਇੱਕ ਲੁਕਿਆ ਹੋਇਆ Slack ਟੋਕਨ ਸੀ। CSS ਨੇ ਟੋਕਨ ਨੂੰ ਉਪਭੋਗਤਾ ਲਈ ਅਦਿੱਖ ਬਣਾ ਦਿੱਤਾ ਪਰ ਇਸਨੂੰ ਮਾਰਕਅੱਪ ਵਿੱਚ ਰੱਖਿਆ। AI ਏਜੰਟ, ਜੋ ਈਮੇਲ ਵਿੱਚ ਇਨਬੈਡ ਕੀਤੇ ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਪਾਲਣਾ ਕਰਨ ਲਈ ਸਿਖਲਾਈ ਪ੍ਰਾਪਤ ਹੈ, ਨੇ ਟੋਕਨ ਨੂੰ ਇੱਕ ਕਮਾਂਡ ਵਜੋਂ ਸਮਝਿਆ ਅਤੇ ਇਸਨੂੰ ਹਮਲਾਵਰ ਦੇ ਸਰਵਰ 'ਤੇ ਵਾਪਸ ਭੇਜ ਦਿੱਤਾ।

ਦੋਵੇਂ ਹਮਲੇ ਪ੍ਰਸਿੱਧ ਪ੍ਰੋਵਾਈਡਰਾਂ ਦੇ ਇੱਕੋ ਸਮੂਹ ਵਿਰੁੱਧ ਸਫਲ ਰਹੇ, ਜੋ ਇਹ ਦਿਖਾਉਂਦੇ ਹਨ ਕਿ ਇਹ ਕਮਜ਼ੋਰੀ CSS ਦੇ ਰੈਂਡਰ ਹੋਣ ਦੇ ਮੂਲ ਤਰੀਕੇ ਤੋਂ ਪੈਦਾ ਹੁੰਦੀ ਹੈ, ਨਾ ਕਿ ਕਿਸੇ ਇੱਕ ਪਲੇਟਫਾਰਮ ਦੇ ਲਾਗੂ ਕਰਨ ਦੇ ਤਰੀਕੇ ਤੋਂ।

AI ਏਜੰਟ ਬਨਾਮ ਮਨੁੱਖੀ ਪਾਠਕ

ਮਨੁੱਖ ਸੁਭਾਵਿਕ ਤੌਰ 'ਤੇ ਉਸ ਟੈਕਸਟ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰ ਦਿੰਦੇ ਹਨ ਜੋ ਉਹ ਦੇਖ ਨਹੀਂ ਸਕਦੇ; ਅਸੀਂ ਵਿਜ਼ੂਅਲ ਲੇਆਉਟ 'ਤੇ ਭਰੋਸਾ ਕਰਦੇ ਹਾਂ ਕਿ ਉਹ ਸਾਨੂੰ ਦੱਸੇ ਕਿ ਕੀ ਮਹੱਤਵਪੂਰਨ ਹੈ। ਇਸਦੇ ਉਲਟ, AI ਏਜੰਟ ਕੱਚੇ DOM ਜਾਂ ਇੱਕ accessibility tree 'ਤੇ ਕੰਮ ਕਰਦੇ ਹਨ ਜੋ ਵਿਜ਼ੂਅਲ ਸਟੇਟ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ ਹਰ ਤੱਤ ਨੂੰ ਰਿਕਾਰਡ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਇੱਕ AI ਪੇਜ ਨੂੰ ਪੜ੍ਹਦਾ ਹੈ, ਤਾਂ ਇਹ "ਜੇ ਮੈਂ ਇਸਨੂੰ ਨਹੀਂ ਦੇਖ ਸਕਦਾ, ਤਾਂ ਮੈਂ ਇਸਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰਾਂਗਾ" ਵਾਲਾ ਨਿਯਮ ਲਾਗੂ ਨਹੀਂ ਕਰਦਾ। ਇਹ ਅਸੰਗਤੀ ਇੱਕ ਅੰਨ੍ਹੀ ਥਾਂ (blind spot) ਪੈਦਾ ਕਰਦੀ ਹੈ: ਮਨੁੱਖੀ ਵਰਤੋਂ ਲਈ ਬਣਾਈਆਂ ਗਈਆਂ ਸੈਨੀਟਾਈਜ਼ੇਸ਼ਨ ਪਾਈਪਲਾਈਨਾਂ ਹੁਣ ਆਟੋਮੇਟਿਡ ਪਾਠਕਾਂ ਲਈ ਸੁਰੱਖਿਆ ਦੀ ਗਾਰੰਟੀ ਨਹੀਂ ਦਿੰਦੀਆਂ।

ਇਹ ਕੋਈ ਨਵੀਂ AI ਖਾਮੀ ਨਹੀਂ ਹੈ। ਇਹ ਇੱਕ ਪੁਰਾਣੀ ਵੈੱਬ ਖਾਮੀ ਹੈ—ਕੋਡ ਤੋਂ ਬਿਨਾਂ ਲੇਆਉਟ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਨ ਦੀ CSS ਦੀ ਯੋਗਤਾ—ਜੋ ਇੱਕ ਨਵੇਂ ਕਿਸਮ ਦੇ ਉਪਭੋਗਤਾ ਨਾਲ ਮਿਲ ਰਹੀ ਹੈ। ਕੋਈ ਵੀ ਸੇਵਾ ਜੋ ਈਮੇਲ ਸਮੱਗਰੀ ਨੂੰ AI-ਸੰਚਾਲਿਤ ਸਹਾਇਕ, ਸਮਰਾਈਜ਼ਰ (summariser) ਜਾਂ ਕਲਾਸੀਫਾਇਰ (classifier) ਨੂੰ ਸੌਂਪਦੀ ਹੈ, ਹੁਣ ਉਸ ਜੋਖਮ ਦਾ ਸਾਹਮਣਾ ਕਰ ਰਹੀ ਹੈ ਕਿ ਸਹਾਇਕ ਉਸ ਡੇਟਾ 'ਤੇ ਕਾਰਵਾਈ ਕਰੇਗਾ ਜੋ ਇੱਕ ਮਨੁੱਖ ਕਦੇ ਦੇਖਦਾ ਹੀ ਨਹੀਂ।

ਰੱਖਿਆ ਲਈ ਜ਼ਿੰਮੇਵਾਰ ਕੌਣ ਹੈ?

ਇਹ ਹਮਲੇ ਇੱਕ ਅਧਿਕਾਰ ਖੇਤਰ (jurisdictional) ਸਵਾਲ ਖੜ੍ਹਾ ਕਰਦੇ ਹਨ। ਵੈੱਬਮੇਲ ਪ੍ਰੋਵਾਈਡਰ ਮਨੁੱਖੀ ਉਪਭੋਗਤਾਵਾਂ ਦੀ ਰੱਖਿਆ ਲਈ ਪਹਿਲਾਂ ਹੀ HTML ਨੂੰ ਸਾਫ਼ ਕਰਦੇ ਹਨ; ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਰਿੰਗ ਲਈ ਪਹਿਲਾਂ ਹੀ ਉਹੀ ਨਿਯਮ ਲਾਗੂ ਕਰਦੇ ਹਨ। ਫਿਰ ਵੀ ਉਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਅਗਲੇ ਪੱਧਰ (downstream) ਦੇ AI ਬਾਰੇ ਵਿਚਾਰ ਨਹੀਂ ਕਰਦਾ ਜੋ ਉਸੇ ਮਾਰਕਅੱਪ ਨੂੰ ਪੜ੍ਹੇਗਾ। ਕੀ ਈਮੇਲ ਸੇਵਾ ਨੂੰ ਡੂੰਘੀ CSS ਸੈਨੀਟਾਈਜ਼ੇਸ਼ਨ ਜੋੜਨੀ ਚਾਹੀਦੀ ਹੈ? ਕੀ ਬ੍ਰਾਊਜ਼ਰਾਂ ਨੂੰ ਇੱਕ ਅਜਿਹਾ ਫਲੈਗ (flag) ਪ੍ਰਗਟ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਤੱਤਾਂ ਨੂੰ "ਸਕ੍ਰਿਪਟਾਂ ਲਈ ਅਦਿੱਖ" ਵਜੋਂ ਮਾਰਕ ਕਰਦਾ ਹੈ? ਜਾਂ ਕੀ AI ਵੈਂਡਰਾਂ ਨੂੰ ਅਜਿਹੇ ਫਿਲਟਰ ਬਣਾਉਣੇ ਚਾਹੀਦੇ ਹਨ ਜੋ ਪ੍ਰੋਸੈਸਿੰਗ ਤੋਂ ਪਹਿਲਾਂ ਲੁਕੇ ਹੋਏ ਨੋਡਾਂ ਨੂੰ ਰੱਦ ਕਰ ਦੇਣ?

AI-ਅਧਾਰਿਤ ਈਮੇਲ ਟੂਲ ਬਣਾਉਣ ਵਾਲੀਆਂ ਸੁਰੱਖਿਆ ਟੀਮਾਂ ਨੂੰ ਸਿਰਫ਼ ਇਨਬਾਕਸ ਤੱਕ ਪਹੁੰਚਣ ਵਾਲੇ HTML ਦੀ ਹੀ ਨਹੀਂ, ਸਗੋਂ ਪੂਰੀ ਰੈਂਡਰਿੰਗ ਪਾਈਪਲਾਈਨ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਿਹਾ ਜਾ ਰਿਹਾ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ CSS ਲਾਗੂ ਹੋਣ ਤੋਂ ਬਾਅਦ DOM ਦੀ ਜਾਂ