Langflow – ਇੱਕ ਓਪਨ-ਸੋਰਸ ਪਲੇਟਫਾਰਮ ਜੋ ਡਿਵੈਲਪਰਾਂ ਨੂੰ LLM ਪ੍ਰੋਂਪਟਸ, ਡੇਟਾ ਸੋਰਸਾਂ ਅਤੇ ਕਸਟਮ Python ਕੋਡ ਨੂੰ ਇਕੱਠਾ ਜੋੜਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ – ਵਿੱਚ ਇੱਕ ਗੰਭੀਰ ਖਾਮੀ ਹੈ ਜੋ ਕਿਸੇ ਨੂੰ ਵੀ ਕਮਜ਼ੋਰ ਸਰਵਰ 'ਤੇ ਮਨਮੋਜਾ Python ਚਲਾਉਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀ ਹੈ। CVE-2026-33017, ਜਿਸਦੀ ਰੇਟਿੰਗ CVSS ਸਕੇਲ 'ਤੇ 9.8 ਹੈ, 1.9.0 ਤੋਂ ਪਹਿਲਾਂ ਦੇ ਹਰ ਵਰਜ਼ਨ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ ਬਿਨਾਂ ਕਿਸੇ ਪ੍ਰਮਾਣਿਕਤਾ (authentication) ਦੇ ਚਾਲੂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਆਪਰੇਟਰਾਂ ਨੂੰ ਅੱਪਗ੍ਰੇਡ ਕਰਨ ਜਾਂ “public flow” ਫੀਚਰ ਨੂੰ ਬੰਦ ਕਰਨ ਲਈ ਮਜਬੂਰ ਹੋਣਾ ਪੈਂਦਾ ਹੈ।

ਬੱਗ (bug) ਕੀ ਕਰਦਾ ਹੈ

Langflow ਦਾ public-flow endpoint ਡੈਮੋ-ਸਟਾਈਲ ਚੈਟਬੋਟਸ ਲਈ ਸੀ ਜਿਨ੍ਹਾਂ ਨੂੰ ਕੋਈ ਵੀ ਲੌਗਇਨ ਕੀਤੇ ਬਿਨਾਂ ਵਰਤ ਸਕਦਾ ਹੈ। ਇਹ endpoint ਰਿਕਵੈਸਟ ਬਾਡੀ ਵਿੱਚ ਇੱਕ data ਪੈਰਾਮੀਟਰ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ, ਇਹ ਮੰਨ ਲੈਂਦਾ ਹੈ ਕਿ ਪੇਲੋਡ ਵਿੱਚ ਇੱਕ ਸੁਰੱਖਿਅਤ ਫਲੋ ਡੈਫੀਨੇਸ਼ਨ ਹੈ, ਅਤੇ ਫਿਰ ਸਮੱਗਰੀ ਨੂੰ ਸਿੱਧਾ Python ਦੇ ਬਿਲਟ-ਇਨ exec() ਫੰਕਸ਼ਨ ਨੂੰ ਸੌਂਪ ਦਿੰਦਾ ਹੈ। exec() ਸਟ੍ਰਿੰਗ ਨੂੰ ਕੋਡ ਵਜੋਂ ਮੁਲਾਂਕਣ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ Langflow ਪ੍ਰੋਸੈਸ ਦੇ ਬਰਾਬਰ ਅਧਿਕਾਰਾਂ (privileges) ਨਾਲ ਚਲਾਉਂਦਾ ਹੈ।

ਇੱਕ ਹਮਲਾਵਰ ਨੂੰ ਇੱਕ ਅਜਿਹੀ ਰਿਕਵੈਸਟ ਤਿਆਰ ਕਰਨ ਲਈ ਸਿਰਫ਼ public flow ਦੀ ID ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ – ਇੱਕ ਅਜਿਹੀ ਵੈਲਯੂ ਜੋ ਅਕਸਰ ਸਾਂਝੇ URLs ਵਿੱਚ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ – ਜੋ ਕਿ ਇੱਕ ਮਾਲੀਸ਼ੀਅਸ ਫਲੋ ਡੈਫੀਨੇਸ਼ਨ ਨਾਲ ਬਦਲ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ। ਜਦੋਂ ਸਰਵਰ ਰਿਕਵੈਸਟ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਦਾ ਹੈ, ਤਾਂ ਇੰਜੈਕਟ ਕੀਤਾ ਗਿਆ Python ਤੁਰੰਤ ਚੱਲਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਹਮਲਾਵਰ ਨੂੰ ਹੋਸਟ ਸਿਸਟਮ 'ਤੇ ਪੂਰਾ ਕੰਟਰੋਲ ਮਿਲ ਜਾਂਦਾ ਹੈ।

ਇਹ ਕਮਜ਼ੋਰੀ ਕਿਵੇਂ ਹੋਈ

ਪਹਿਲਾਂ ਦੇ ਰਿਲੀਜ਼ਾਂ ਵਿੱਚ, ਜਦੋਂ data ਫੀਲਡ ਮੌਜੂਦ ਹੁੰਦੀ ਸੀ, ਤਾਂ ਡੇਟਾਬੇਸ ਤੋਂ ਫਲੋ ਲੋਡ ਕਰਨ ਵਾਲਾ ਕੋਡ ਪਾਥ ਬਾਈਪਾਸ ਹੋ ਜਾਂਦਾ ਸੀ। ਪੇਲੋਡ ਨੂੰ ਸਾਫ਼ (sanitising) ਕਰਨ ਜਾਂ ਵੈਲੀਡੇਟ ਕਰਨ ਦੀ ਬਜਾਏ, ਸਰਵਰ ਕਾਲਰ 'ਤੇ ਭਰੋਸਾ ਕਰਦਾ ਸੀ ਅਤੇ ਇਸਨੂੰ ਜਿਵੇਂ ਦਾ ਤਿਵੇਂ ਚਲਾ ਦਿੰਦਾ ਸੀ। ਕਿਉਂਕਿ endpoint ਬਿਨਾਂ ਕਿਸੇ ਲੌਗਇਨ ਦੇ ਪਹੁੰਚਯੋਗ ਹੈ, ਇਸ ਲਈ ਕਿਸੇ ਵੀ Langflow ਇੰਸਟੈਂਸ ਲਈ, ਜਿਸ ਵਿੱਚ public flows ਚਾਲੂ ਹਨ, ਹਮਲੇ ਦੀ ਸਤ੍ਹਾ (attack surface) ਪਬਲਿਕ ਇੰਟਰਨੈੱਟ ਹੈ।

ਕੌਣ ਖਤਰੇ ਵਿੱਚ ਹੈ

ਗੰਭੀਰਤਾ ਸਕੋਰ ਨੂੰ ਦੇਖਦੇ ਹੋਏ, ਇਸ ਕਮਜ਼ੋਰੀ ਨੂੰ “critical” ਮੰਨਿਆ ਗਿਆ ਹੈ।

ਤੁਰੰਤ ਰੋਕਥਾਮ ਦੇ ਕਦਮ

  1. Langflow 1.9.0 ਵਿੱਚ ਅੱਪਗ੍ਰੇਡ ਕਰੋ – ਇਹ ਇੱਕੋ ਇੱਕ ਤਸਦੀਕਸ਼ੁਦਾ ਫਿਕਸ ਹੈ।
  2. Public flow ਫੀਚਰ ਨੂੰ ਡਿਸੇਬਲ ਕਰੋ ਜੇਕਰ ਤੁਹਾਨੂੰ ਅਨਾਮ (anonymous) ਐਕਸੈਸ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ।
  3. AUTO_LOGIN ਬੰਦ ਕਰੋ – ਇਹ ਬਿਨਾਂ ਪ੍ਰਮਾਣਿਕਤਾ ਵਾਲੀਆਂ ਰਿਕਵੈਸਟਾਂ ਲਈ ਆਟੋਮੈਟਿਕ ਸੈਸ਼ਨ ਬਣਾਉਣ ਨੂੰ ਰੋਕਦਾ ਹੈ।
  4. API ਨੂੰ ਫਾਇਰਵਾਲ ਜਾਂ ਰਿਵਰਸ ਪ੍ਰੌਕਸੀ (reverse proxy) ਦੇ ਪਿੱਛੇ ਰੱਖੋ ਤਾਂ ਜੋ ਭਰੋਸੇਯੋਗ IP ਰੇਂਜਾਂ ਤੱਕ ਪਹੁੰਚ ਨੂੰ ਸੀਮਤ ਕੀਤਾ ਜਾ ਸਕੇ।
  5. Web Application Firewall (WAF) ਤੈਨਾਤ ਕਰੋ ਜੋ data ਪੈਰਾਮੀਟਰ ਵਾਲੇ build_public_tmp endpoint ਨੂੰ ਰਿਕਵੈਸਟਾਂ ਨੂੰ ਰੋਕਦਾ ਹੈ।

ਫਿਕਸ ਕਿਉਂ ਮਹੱਤਵਪੂਰਨ ਹੈ

ਇਹ ਕਮਜ਼ੋਰੀ ਇੱਕ ਬੁਨਿਆਦੀ ਡਿਜ਼ਾਈਨ ਗਲਤੀ ਦਾ ਫਾਇਦਾ ਉਠਾਉਂਦੀ ਹੈ: ਉੱਚ ਅਧਿਕਾਰਾਂ (high privileges) ਨਾਲ ਚੱਲਣ ਵਾਲੇ ਸੰਦਰਭ ਵਿੱਚ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਦਿੱਤੇ ਗਏ ਕੋਡ 'ਤੇ ਭਰੋਸਾ ਕਰਨਾ। ਉਸ ਭਰੋਸੇ ਨੂੰ ਹਟਾ ਕੇ ਅਤੇ ਸਖ਼ਤ ਇਨਪੁਟ ਹੈਂਡਲਿੰਗ ਲਾਗੂ ਕਰਕੇ, Langflow 1.9.0 ਪਬਲਿਕ ਡੈਮੋ ਉਪਭੋਗਤਾਵਾਂ ਅਤੇ ਅੰਡਰਲਾਈਂਗ ਸਰਵਰ ਦੇ ਵਿਚਕਾਰ ਦੀ ਰੁਕ