Concern: Manipulated data of no rights and view only permissions was getting saved in JSON of the document.
Cause: The JSON data received from UI was getting saved into DB directly without it getting verified with the DB values. So in case if the data has been manipulated from DEV tools and saved, this data will be saved into DB as document JSON and the same will be fetched to candidate.This is data security breach.
Correction: While saving the JSON data, additional code changes have been done to verify -
- If previous JSON data is not present, form data is compared with database values. If manipulated data is found, it is replaced with database value.
- If previous JSON data is present, form data is compared with previous JSON values. If manipulated data is found, it is replaced with previous JSON value.
Files Affected:
- DMS\DMS.App\src\DMS_AppLogic\BuisnessLogic\DocumentData.cs
- DMS\DMS.App\src\DMS_AppLogic\BuisnessLogic\PersonData.cs
- DMS\DMS.App\src\DMS_AppLogic\Common\HistoryData.cs
- DMS\DMS.App\src\DMS_AppLogic\Common\IHistoryData.cs
- DMS\DMS.App\src\DMS_AppLogic\Common\Routines\CommonRoutines.cs
- DMS\DMS.App\src\DMS_AppLogic\Common\Routines\ICommonRoutines.cs
- DMS\DMS.App\src\DMS_AppLogic\IntegrationLogic\CandidateProfile.cs
- DMS\DMS.App\src\DMS_AppLogic\Repository\IDocumentRepository.cs
- DMS\DMS.App\src\DMS_WebApi\Startup.cs
- DMS\DMS.App\src\Entities\Document\FieldsDto.cs
- DMS\DMS.Web\src\DMS_WebApp\ClientApp\src\app\candidate\document-review\document-review.component.ts
Areas impacted:
Implementation:
We are reusing the functionality done for fetching history data but will need additional changes. So extending the estimates 16h to 24h