Elementor Pro 4.2.1-നും അതിനുമുമ്പുള്ള പതിപ്പുകൾക്കും Forms widget-ലെ file-upload ഫീൽഡിലുള്ള ഒരു unauthenticated remote-code-execution (RCE) പിശക് കാരണം സുരക്ഷാ ഭീഷണി നേരിടാം; ഈ പ്രശ്നം 4.2.2 പതിപ്പിൽ പരിഹരിച്ചിട്ടുണ്ട്, അതിനാൽ പഴയ പതിപ്പുകൾ ഉപയോഗിക്കുന്ന സൈറ്റുകൾ ഉടൻ തന്നെ അപ്‌ഗ്രേഡ് ചെയ്യേണ്ടതാണ്.

ഈ ബഗ് എന്ത് ചെയ്യുന്നു

ഈ സുരക്ഷാ വീഴ്ചയ്ക്ക് CVSS 9.0 റേറ്റിംഗ് ഉണ്ട്, അതായത് ഒരു അറ്റാക്കർക്ക് ലോഗിൻ ചെയ്യുകയോ മറ്റ് ക്രെഡൻഷ്യലുകൾ നൽകുകയോ ചെയ്യാതെ തന്നെ ബാധിക്കപ്പെട്ട സൈറ്റിലെ സെർവറിൽ ഏത് PHP കോഡും പ്രവർത്തിപ്പിക്കാൻ സാധിക്കും. Elementor Pro അതിന്റെ Forms widget-ൽ ഫയലുകൾ അപ്‌ലോഡ് ചെയ്യുന്നത് കൈകാര്യം ചെയ്യുന്ന രീതിയിലാണ് ഈ പ്രശ്നം നിലനിൽക്കുന്നത്. ഈ പ്ലഗിൻ രണ്ട് വ്യത്യസ്ത ലൂപ്പുകൾ (loops) ആണ് പ്രവർത്തിപ്പിക്കുന്നത്: ഒന്ന് അപ്‌ലോഡ് ചെയ്ത ഓരോ ഫയലും പരിശോധിക്കുന്നതിനും (validate), മറ്റൊന്ന് ആ ഫയൽ വെബ്-ആക്സസ് ചെയ്യാവുന്ന അപ്‌ലോഡ് ഡയറക്ടറിയിൽ സേവ് ചെയ്യുന്നതിനും വേണ്ടിയുള്ളതാണ്.

രണ്ട് ഫയലുകൾ അടങ്ങിയ ഒരു സിംഗിൾ റിക്വസ്റ്റ് വഴി അറ്റാക്കർക്ക് ഇത് ചെയ്യാൻ സാധിക്കും. ആദ്യത്തെ ഫയലിന് ഒരു ശൂന്യമായ (empty) പേര് നൽകുന്നതിലൂടെ വാലിഡേഷൻ ലൂപ്പ് അതിന്റെ പരിശോധന ഒഴിവാക്കുന്നു. രണ്ടാമത്തെ ഫയലായ മാലീഷ്യസ് PHP സ്ക്രിപ്റ്റ് രണ്ടാമത്തെ ലൂപ്പിലൂടെ കടന്നുപോയി പബ്ലിക് ഫോൾഡറിൽ സേവ് ചെയ്യപ്പെടുന്നു. Elementor Pro അപ്‌ലോഡ് ചെയ്ത ഫയലുകൾക്ക് ടൈംസ്റ്റാമ്പ് (timestamp) ഉപയോഗിച്ച് പേര് നൽകുന്നതിനാൽ, അറ്റാക്കർക്ക് ഫയലിന്റെ പേര് മുൻകൂട്ടി പ്രവചിക്കാനും പിന്നീട് ആ കോഡ് പ്രവർത്തിപ്പിക്കുന്നതിനായി നേരിട്ട് ആ ഫയൽ ആവശ്യപ്പെടാനും സാധിക്കും.

ഈ പിശക് എങ്ങനെ ഉണ്ടായി

വാലിഡേഷനും സ്റ്റോറേജും സ്വതന്ത്രമായി നിലനിർത്താനാണ് ഈ ഡ്യുവൽ-ലൂപ്പ് (dual-loop) ഡിസൈൻ ഉദ്ദേശിച്ചിരുന്നത്, എന്നാൽ ഇവ തമ്മിൽ ഒരു പൊതുവായ പരിശോധന (sanity check) ഇല്ലാത്തത് ശൂന്യമായ പേര് നൽകുന്ന തന്ത്രം വിജയിക്കാൻ കാരണമായി. സൈറ്റ് ഉടമ സന്ദർശകർക്കായി ഈ ഫീച്ചർ പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടോ ഇല്ലയോ എന്നത് പരിഗണിക്കാതെ തന്നെ, Forms widget-ലെ file-upload ഫീൽഡ് ഉപയോഗിക്കുന്ന എല്ലാ ഇൻസ്റ്റാളേഷനുകളെയും ഈ ബഗ് ബാധിക്കുന്നു.

ആർക്കൊക്കെയാണ് ഭീഷണി

Elementor Pro 4.2.1 അല്ലെങ്കിൽ അതിനുമുമ്പുള്ള പതിപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്തിട്ടുള്ള ഏതൊരു WordPress സൈറ്റും ഇതിന് ഇരയാകാൻ സാധ്യതയുണ്ട്. ഈ എക്സ്പ്ലോയിറ്റിന് ഓതന്റിക്കേഷൻ ആവശ്യമില്ലാത്തതിനാൽ, അഡ്മിൻ ആക്സസ് നിയന്ത്രിച്ചിട്ടുള്ള സൈറ്റുകൾ പോലും ഇതിന് ഇരയാകാം. ഇത് വിജയകരമായി നടപ്പിലാക്കിയാൽ അറ്റാക്കർക്ക് ഹോസ്റ്റിംഗ് എൻവയോൺമെന്റിന്മേൽ പൂർണ്ണ നിയന്ത്രണം ലഭിക്കുകയും, ഡാറ്റാ മോഷണം, സൈറ്റ് ഡെഫേസ്‌മെന്റ് (site defacement), അല്ലെങ്കിൽ റാൻസംവെയർ (ransomware) വിന്യസിക്കൽ എന്നിവയ്ക്ക് വഴിതുറക്കുകയും ചെയ്യുന്നു.

ഇപ്പോൾ എന്തുചെയ്യണം

  • WordPress CLI കമാൻഡ് ഉപയോഗിച്ച് ഇൻസ്റ്റാൾ ചെയ്തിരിക്കുന്ന പതിപ്പ് പരിശോധിക്കുക:

    wp plugin list --name=elementor-pro --field=version
    
  • ഔട്ട്‌പുട്ടിൽ 4.2.1 അല്ലെങ്കിൽ അതിൽ താഴെയുള്ള പതിപ്പാണ് കാണുന്നതെങ്കിൽ, ഉടൻ തന്നെ 4.2.2 അല്ലെങ്കിൽ അതിനുശേഷമുള്ള പതിപ്പിലേക്ക് അപ്‌ഡേറ്റ് ചെയ്യുക. ഈ അപ്‌ഡേറ്റ്, ശൂന്യമായ പേര് ഉപയോഗിച്ചുള്ള ബൈപാസ് തടയുന്നതിനായി പിശകുള്ള അപ്‌ലോഡ് ലോജിക്കിന് പകരം ഒരു സിംഗിൾ, അറ്റോമിക് വാലിഡേഷൻ-ആൻഡ്-സേവ് റൂട്ടീൻ (atomic validation-and-save routine) കൊണ്ടുവരുന്നു.

  • അപ്‌ഗ്രേഡ് ചെയ്ത ശേഷം, പ്ലഗിൻ ഉപയോഗിക്കുന്ന ടൈംസ്റ്റാമ്പ് പാറ്റേണുമായി പൊരുത്തപ്പെടുന്ന ഏതെങ്കിലും PHP ഫയലുകൾ അപ്‌ലോഡ് ഡയറക്ടറിയിലുണ്ടോ എന്ന് പരിശോധിക്കുകയും അവ നീക്കം ചെയ്യുകയും ചെയ്യുക.

  • പാച്ച് നടപ്പിലാക്കുന്നത് വരെ, പ്രത്യേകിച്ച് കൂടുതൽ ആളുകൾ സന്ദർശിക്കുന്ന സൈറ്റുകളിൽ, പബ്ലിക് ഫോമുകളിലെ file-upload ഫീൽഡ് പ്രവർത്തനരഹിതമാക്കുന്നത് പരിഗണിക്കുക.

വിപരീത വാദം

ഫോംസ് വിഡ്ജറ്റിൽ പബ്ലിക് ആയി ആക്സസ് ചെയ്യാവുന്ന ഒരു ഫയൽ അപ്‌ലോഡ് ഫീൽഡ് കോൺഫിഗർ ചെയ്തിട്ടുണ്ടെങ്കിൽ മാത്രമേ ഈ എക്സ്പ്ലോയിറ്റ് സാധ്യമാകൂ എന്നതിനാൽ ഇതിന്റെ അപകടസാധ്യത പരിമിതമാണെന്ന് ചില ഡെവലപ്പർമാർ വാദിക്കുന്നു. എന്നിരുന്നാലും, പല Elementor അധിഷ്ഠിത സൈറ്റുകളും കോൺടാക്റ്റ്, തൊഴിൽ അപേക്ഷകൾ അല്ലെങ്കിൽ യൂസർ ജനറേറ്റഡ് കണ്ടന്റ് എന്നിവയ്ക്കായി ഇത്തരം ഫോമുകൾ ഉപയോഗിക്കുന്നുണ്ട്. അതിനാൽ തന്നെ ഈ സാഹചര്യം സാധാരണമായതിനാൽ ഈ സുരക്ഷാ വീഴ്ച അതീവ ഗുരുതരമായി കണക്കാക്കപ്പെടുന്നു.

ഇനി ശ്രദ്ധിക്കേണ്ട കാര്യങ്ങൾ

കൂടുതൽ സൈറ്റുകൾ ആക്രമണശ്രമങ്ങൾ റിപ്പോർട്ട് ചെയ്യുന്നതിനനുസരിച്ച് പുതിയ അഡ്വൈസറി കുറിപ്പുകൾ വരാൻ സാധ്യതയുണ്ടെന്ന് സുരക്ഷാ ഗവേഷകർ പ്രതീക്ഷിക്കുന്നു. തുടർപതിപ്പുകൾക്കോ (patches) പരിഹാരങ്ങൾക്കോ വേണ്ടി Elementor-ന്റെ ഔദ്യോഗിക അറിയിപ്പുകളും വിശ്വസനീയമായ വൾനറബിലിറ്റി ഡാറ്റാബേസുകളും ശ്രദ്ധിക്കുക.

ചുരുക്കത്തിൽ: Elementor Pro 4.2.1-നും അതിനുമുമ്പുള്ള പതിപ്പുകൾക്കും ഉള്ള RCE പിശക് ഉയർന്ന തീവ്രതയുള്ളതും ലോഗിൻ ആവശ്യമില്ലാത്തതുമായ ഒരു അറ്റാക്ക് വെക്ടറാണ്. 4.2.2-ലേക്ക് അപ്‌ഡേറ്റ് ചെയ്യുക എന്നത് മാത്രമാണ് ഇതിനുള്ള ഏക വിശ്വസനീയമായ പ്രതിരോധം; വൈകുന്നത് നിങ്ങളുടെ സെർവറിനെയും ഡാറ്റയെയും ഗുരുതരമായ അപകടത്തിലാക്കും.