CWE-495: Private Data Structure Returned From A Public Method
The product has a method that is declared public, but returns a reference to a private data structure, which could then be modified in unexpected ways.
How it's found
Private Data Structure Returned From A Public Method is a specific, narrowly defined instance of a broader pattern. Testers confirm it with targeted code review and a proof-of-concept input that exercises the exact code path this weakness describes.
Consequences
- Modify Application Data: The contents of the data structure can be modified from outside the intended scope.
Mitigations
- Implementation: Declare the method private.
- Implementation: Clone the member data and keep an unmodified version of the data private to the object.
- Implementation: Use public setter methods that govern how a private member can be modified.
Where this fits in a TurboPentest engagement
This weakness is not covered by the automated black-box pentest. IntegSec pentesters cover it in a manual engagement.
Frequently asked questions
What is CWE-495?
The product has a method that is declared public, but returns a reference to a private data structure, which could then be modified in unexpected ways.
How do you find Private Data Structure Returned From A Public Method?
Private Data Structure Returned From A Public Method is a specific, narrowly defined instance of a broader pattern. Testers confirm it with targeted code review and a proof-of-concept input that exercises the exact code path this weakness describes.
What is the impact of CWE-495?
Modify Application Data: The contents of the data structure can be modified from outside the intended scope.
Does TurboPentest test for Private Data Structure Returned From A Public Method?
This weakness is not covered by the automated black-box pentest. IntegSec pentesters cover it in a manual engagement.
Related CWEs
Written and reviewed by
Michel Chamberland - Founder & CEO, IntegSec
CISSP, OSCP, OSCE, CEH, GIAC, CCSK · 20+ years in offensive security
Michel has spent 20+ years on offensive security teams including IBM X-Force Red and Trustwave SpiderLabs, leading penetration tests, red team engagements, and breach response for Fortune 500 customers. He is the founder of IntegSec and the architect of TurboPentest.
Find these issues before an attacker does
TurboPentest runs an agentic AI pentest against your target and reports findings with proof, from $99 per target.
Start a pentest