-
Type:
Change Request
-
Status:
Closed
-
Priority:
Medium
-
Resolution:
Done
-
-
-
Module:
BenAdmin
- Security
-
-
Item State:
Production Complete
- Closed
-
Issue Importance:
Must Have
-
Vulnerability Description:
WORKTERRA provides an interface for sending emails to administrators and WORKTERRA's customer support system. The backend does not rate-limit or validate the destination of these emails.
Impact:
A malicious user could use WORKTERRA servers as a spam delivery platform.
Verification and Attack Information:
Praetorian verified this finding by intercepting requests to the endpoint responsible for sending emails. A malicious user can modify the destination email address to any email address. Additionally, there are no controls in place to the number of emails sent within a given time frame. This finding was demonstrated by sending 50 emails to a test email account. The figure below shows that the emails are originating from WORKTERRA IP addresses.
Recommendation:
Validate the email's destination address on the server-side. Additionally, WORKTERRA should limit the number of emails that a user can send per-minute.
- relates to
-
ST-211
Restrict domain user for emails
-
-
Closed
{"report":{"apdex":1,"isInitial":true,"journeyId":"5bbd56ef-5264-4c2f-9e12-16aaff71cc24","key":"jira.project.issue.view-issue","navigationType":0,"readyForUser":896.2000000001863,"redirectCount":0,"resourceLoadedEnd":1041,"resourceLoadedStart":135.70000000018626,"resourceTiming":[{"duration":313.5,"initiatorType":"link","name":"https://jira.workterra.net/s/3003653444a1e1a85555cab7dcfb3a21-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/2e46d90b5cae895c9c38649c9d510130/_/download/contextbatch/css/_super/batch.css","startTime":135.70000000018626,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":135.70000000018626,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":449.20000000018626,"responseStart":0,"secureConnectionStart":0},{"duration":313.39999999990687,"initiatorType":"link","name":"https://jira.workterra.net/s/dd6a0911920485696ac20493290df627-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/3abe50d469404b639745df44b51476b6/_/download/contextbatch/css/jira.browse.project,jira.view.issue,project.issue.navigator,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&richediton=true","startTime":135.89999999990687,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":135.89999999990687,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":449.29999999981374,"responseStart":0,"secureConnectionStart":0},{"duration":313.79999999981374,"initiatorType":"link","name":"https://jira.workterra.net/s/d41d8cd98f00b204e9800998ecf8427e-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/8.5.0/_/download/batch/com.atlassian.auiplugin:split_aui.pattern.label/com.atlassian.auiplugin:split_aui.pattern.label.css","startTime":136,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":136,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":449.79999999981374,"responseStart":0,"secureConnectionStart":0},{"duration":313.6999999997206,"initiatorType":"link","name":"https://jira.workterra.net/s/bd548f27bbf8f278bd83b60dd3284ed8-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/1.0/_/download/batch/jira.webresources:global-static-adgs/jira.webresources:global-static-adgs.css","startTime":136.10000000009313,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":136.10000000009313,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":449.79999999981374,"responseStart":0,"secureConnectionStart":0},{"duration":313.5,"initiatorType":"link","name":"https://jira.workterra.net/s/70725731a158a7140f19ddbd4201ba27-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/1.0/_/download/batch/jira.webresources:global-static/jira.webresources:global-static.css","startTime":136.29999999981374,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":136.29999999981374,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":449.79999999981374,"responseStart":0,"secureConnectionStart":0},{"duration":380.8000000002794,"initiatorType":"script","name":"https://jira.workterra.net/s/f2623af22c15df767ec6ff268ae0b8bd-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/2e46d90b5cae895c9c38649c9d510130/_/download/contextbatch/js/_super/batch.js?locale=en-US","startTime":136.39999999990687,"connectEnd":136.39999999990687,"connectStart":136.39999999990687,"domainLookupEnd":136.39999999990687,"domainLookupStart":136.39999999990687,"fetchStart":136.39999999990687,"redirectEnd":0,"redirectStart":0,"requestStart":136.39999999990687,"responseEnd":517.2000000001863,"responseStart":517.2000000001863,"secureConnectionStart":136.39999999990687},{"duration":401.60000000009313,"initiatorType":"script","name":"https://jira.workterra.net/s/ecf7ec549751ae117b778f0525d6d371-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/4.1.5/_/download/resources/com.atlassian.plugins.atlassian-chaperone:hotspot-tour/hotspot-tour.js?batch=false&locale=en-US","startTime":136.5,"connectEnd":136.5,"connectStart":136.5,"domainLookupEnd":136.5,"domainLookupStart":136.5,"fetchStart":136.5,"redirectEnd":0,"redirectStart":0,"requestStart":136.5,"responseEnd":538.1000000000931,"responseStart":538.1000000000931,"secureConnectionStart":136.5},{"duration":399.10000000009313,"initiatorType":"script","name":"https://jira.workterra.net/s/6ce676f2a5bcc9651cef6e7956f05def-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/3abe50d469404b639745df44b51476b6/_/download/contextbatch/js/jira.browse.project,jira.view.issue,project.issue.navigator,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en-US&richediton=true","startTime":136.5,"connectEnd":136.5,"connectStart":136.5,"domainLookupEnd":136.5,"domainLookupStart":136.5,"fetchStart":136.5,"redirectEnd":0,"redirectStart":0,"requestStart":136.5,"responseEnd":535.6000000000931,"responseStart":535.6000000000931,"secureConnectionStart":136.5},{"duration":402,"initiatorType":"script","name":"https://jira.workterra.net/s/6aa3fcf1fac5fd551eee0b69077524e6-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/aae1242f5fc81cc6a5bb8bc963ccda29/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en-US","startTime":136.60000000009313,"connectEnd":136.60000000009313,"connectStart":136.60000000009313,"domainLookupEnd":136.60000000009313,"domainLookupStart":136.60000000009313,"fetchStart":136.60000000009313,"redirectEnd":0,"redirectStart":0,"requestStart":136.60000000009313,"responseEnd":538.6000000000931,"responseStart":538.6000000000931,"secureConnectionStart":136.60000000009313},{"duration":402.20000000018626,"initiatorType":"script","name":"https://jira.workterra.net/s/d41d8cd98f00b204e9800998ecf8427e-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":136.79999999981374,"connectEnd":136.79999999981374,"connectStart":136.79999999981374,"domainLookupEnd":136.79999999981374,"domainLookupStart":136.79999999981374,"fetchStart":136.79999999981374,"redirectEnd":0,"redirectStart":0,"requestStart":136.79999999981374,"responseEnd":539,"responseStart":539,"secureConnectionStart":136.79999999981374},{"duration":402.5,"initiatorType":"script","name":"https://jira.workterra.net/s/d41d8cd98f00b204e9800998ecf8427e-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":136.79999999981374,"connectEnd":136.79999999981374,"connectStart":136.79999999981374,"domainLookupEnd":136.79999999981374,"domainLookupStart":136.79999999981374,"fetchStart":136.79999999981374,"redirectEnd":0,"redirectStart":0,"requestStart":136.79999999981374,"responseEnd":539.2999999998137,"responseStart":539.2999999998137,"secureConnectionStart":136.79999999981374},{"duration":402.70000000018626,"initiatorType":"script","name":"https://jira.workterra.net/s/ecf7ec549751ae117b778f0525d6d371-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/8.5.0/_/download/batch/com.atlassian.auiplugin:split_aui.pattern.label/com.atlassian.auiplugin:split_aui.pattern.label.js?locale=en-US","startTime":136.89999999990687,"connectEnd":136.89999999990687,"connectStart":136.89999999990687,"domainLookupEnd":136.89999999990687,"domainLookupStart":136.89999999990687,"fetchStart":136.89999999990687,"redirectEnd":0,"redirectStart":0,"requestStart":136.89999999990687,"responseEnd":539.6000000000931,"responseStart":539.6000000000931,"secureConnectionStart":136.89999999990687},{"duration":403,"initiatorType":"link","name":"https://jira.workterra.net/s/05c862146699bb029ceb0a489075e63b-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/bcd66e9a133a1b9f5fd14b56841e1c5b/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":137.10000000009313,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":137.10000000009313,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":540.1000000000931,"responseStart":0,"secureConnectionStart":0},{"duration":403,"initiatorType":"script","name":"https://jira.workterra.net/rest/api/1.0/shortcuts/805012/ea6f30d2bfdc99578bb23f4a5bac3ecd/shortcuts.js?context=issuenavigation&context=issueaction","startTime":137.10000000009313,"connectEnd":137.10000000009313,"connectStart":137.10000000009313,"domainLookupEnd":137.10000000009313,"domainLookupStart":137.10000000009313,"fetchStart":137.10000000009313,"redirectEnd":0,"redirectStart":0,"requestStart":137.10000000009313,"responseEnd":540.1000000000931,"responseStart":540.1000000000931,"secureConnectionStart":137.10000000009313},{"duration":403.29999999981374,"initiatorType":"link","name":"https://jira.workterra.net/s/9095228fa10daa2d3e3d7d5760c95e91-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/72477c22780abda5f51fe696920d843f/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-jira.view.issue,-project.issue.navigator/batch.css?jira.create.linked.issue=true&richediton=true","startTime":137.20000000018626,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":137.20000000018626,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":540.5,"responseStart":0,"secureConnectionStart":0},{"duration":403.39999999990687,"initiatorType":"script","name":"https://jira.workterra.net/s/c19a1b46e985d7fb85efaf27c8febfdd-CDN/-w431t5/805012/9a9e1fae3639050b38ac467c3aa37e79/72477c22780abda5f51fe696920d843f/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-jira.view.issue,-project.issue.navigator/batch.js?jira.create.linked.issue=true&locale=en-US&richediton=true","startTime":137.20000000018626,"connectEnd":137.20000000018626,"connectStart":137.20000000018626,"domainLookupEnd":137.20000000018626,"domainLookupStart":137.20000000018626,"fetchStart":137.20000000018626,"redirectEnd":0,"redirectStart":0,"requestStart":137.20000000018626,"responseEnd":540.6000000000931,"responseStart":540.6000000000931,"secureConnectionStart":137.20000000018626}],"threshold":1000,"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":44,"responseStart":129,"responseEnd":130,"domLoading":133,"domInteractive":1080,"domContentLoadedEventStart":1080,"domContentLoadedEventEnd":1130,"domComplete":1327,"loadEventStart":1327,"loadEventEnd":1329,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[],"measures":[],"correlationId":"68c6f7db9a0f33","effectiveType":"4g","downlink":9.8,"rtt":0,"serverDuration":47,"dbReadsTimeInMs":3,"dbConnsTimeInMs":4,"applicationHash":"156decd7d2b4272533aa6cefc8294af635e1da97","experiments":[]}}
Locations where changes needs to be done-
1)D:\WT\Trunk\Web\Web Projects\BenAdmin\Areas\Customization\Models\PlanDesign\PlanDesignEditContactModel.cs
2)WORKTERA HomeCompany HomeBenAdmin HomeBenAdmin Company HomeBenefit Providers
BenefitProviderModel.cs//
3)AdminUserPVModel.cs//
4)CompanyContactFormPVModel.cs //
5)SystemUserModel.cs//
6)QEEmailNotificationModel.cs// FROM/BCC
7)EmailMessageFormatModel.cs// from/bcc
8)EmpListAndEmailPVModel.cs//
9)IncompleteEnrollmentModel.cs//
10)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Models/EDI/TemplateSettingsModel.cs
11)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Models/EDI/TemplateDeliveryModel.cs
12)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Models/EDI/GroupTemplateInformationModel.cs
13)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Models/EDI/GroupTemplateDeliveryModel.cs
14)/branches/Production/Web/Web Projects/WORKTERRA/Scripts/ImportExportTemplateManagement_MVC.js
15)/branches/Production/Web/Web Projects/WORKTERRA/Scripts/GroupTemplateManagement.js
16)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Views/Customization/EDI/TemplateSettings.cshtml
17)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Views/Customization/EDI/TemplateDelivery.cshtml
18)/branches/Production/Web/Web 19)Projects/WORKTERRA/Areas/Customization/Views/Customization/EDI/GroupTemplateInformation.cshtml
20)/branches/Production/Web/Web Projects/WORKTERRA/Areas/Customization/Views/Customization/EDI/GroupTemplateDelivery.cshtml
21)/branches/Production/Web/Web Projects/BenAdmin/Areas/Customization/Views/Customization/BenefitProvider/AddBenefitProvider.cshtml