Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Testing for Deserialisation of Untrusted Data #7

Open
itscooper opened this issue Jun 15, 2017 · 32 comments
Open

Add Testing for Deserialisation of Untrusted Data #7

itscooper opened this issue Jun 15, 2017 · 32 comments
Assignees
Labels
Milestone

Comments

@itscooper
Copy link
Contributor

https://cwe.mitre.org/data/definitions/502.html

@salecharohit
Copy link

Hi ,

I have delivered a workshop on this topic and would like to contribute in the testing guide by adding details on how to go about finding these issues in various languages like java,php,python,node..js and .NET

Please guide me as to how can i add the details

@kingthorin kingthorin added the new New content to write label Mar 27, 2019
@kingthorin kingthorin added this to the Add New Testing Scenarios milestone Aug 18, 2019
@vermava
Copy link

vermava commented Aug 20, 2019

Hi Team, I am picking up the topic and working on it

Thank You
Vandana

@ThunderSon ThunderSon added the HacktoberFest Issues which are good candidates for HacktoberFest: https://hacktoberfest.digitalocean label Sep 30, 2019
@kingthorin kingthorin removed the HacktoberFest Issues which are good candidates for HacktoberFest: https://hacktoberfest.digitalocean label Nov 4, 2019
@RiieCco
Copy link
Contributor

RiieCco commented Jan 11, 2020

Hey @vermava,

How far did you get with writing test scenario's for this one?
I can maybe give some assistance here since we also already have labs for insecure
deserialization.

https://owasp-skf.gitbook.io/asvs-write-ups/kbid-xxx-deserialisation-yaml
https://owasp-skf.gitbook.io/asvs-write-ups/kbid-xxx-des-pickle-2

@ThunderSon
Copy link
Collaborator

@RiieCco I tried tagging Verma on another issue. No replies. You can move forward with this 😄

@ThunderSon ThunderSon assigned RiieCco and unassigned vermava Jan 11, 2020
@victoriadrake victoriadrake modified the milestones: v4.x: Add New, v4.2: Test Additions Jan 22, 2020
@kingthorin
Copy link
Collaborator

@RiieCco are you going to be able to tackle this?

@Hsiang-Chih
Copy link
Contributor

For serialization issue, there are blackbox and whitebox approaches.
Refer to the section I have done for the CheatSheet. Let me know any section I can help to add?
Deserialization_Cheat_Sheet.html

@ThunderSon
Copy link
Collaborator

Looking at the CS, that CS should belong in this project. It's purely offensive.
@rbsec @kingthorin what are your thoughts on this?

@kingthorin
Copy link
Collaborator

It ends with some offensive references but the majority of the article is about Deserializing Safely (from my skim of the content).

As for white vs blackbox. Although code review is mentioned in the TG it isn't really "testing", so blackbox is probably more applicable (ex: ways you'd identify and exploit during a penetration test or leveraging DAST).

@rbsec
Copy link
Collaborator

rbsec commented Jun 17, 2020

The black/white box review stuff doesn't really belong, but there's a load of defensive stuff for Java and .NET.

It could certainly do with a cleanup, but I think it still has a place the in the cheat sheets project.

@ThunderSon
Copy link
Collaborator

Lovely. This is something we can look at. (Rick it's not porting the whole CS)

Getting data from that CS for the WSTG, and refreshing the focus and look of the Deserialization CS.

@kingthorin
Copy link
Collaborator

Sounds good 👍

@Hsiang-Chih
Copy link
Contributor

  1. "How to test for Deserialisation of Untrusted Data" Is there any existing section or it will be a new section?

  2. agree that the whitebox review can't verify the deserialization results, it can only narrow the scope

@ThunderSon
Copy link
Collaborator

This needs to be added. I am getting vibes of adding this to Business Logic Testing, as it's on an object level and how processing is going to handle the object. If not, we downgrade to Input Val Testing
@kingthorin let me know what you think.

@kingthorin
Copy link
Collaborator

To me it's an Input Validation issue. Business Logic is more specific for things like improper handling of pricing, rebates, HR processes, orders, manufacturing, etc.

@jespunya
Copy link
Contributor

I agree with @kingthorin this is more regarding about Input Validation since it's the abuse of unexpected inputs to perform an action not desired or authorized. Commonly the impact would be a Business Logic exploitation but that's not a must condition. For example you can have an XML bomb that would be part of the deserialization of untrusted Data and results in a DoS instead of the manipulation of the Business Logic.

@ThunderSon
Copy link
Collaborator

Mhm, agreed. I had a discussion back then with @kingthorin and we agreed on it being in Input Validation.
@Hsiang-Chih to answer you (apologies), this will have to be a new section.

@github-actions
Copy link

Please comment if you are still working on this issue, as it has been inactive for 30 days. To give everyone a chance to contribute, we are releasing it to new contributors.

@kingthorin
Copy link
Collaborator

@vermava @RiieCco any news?

@RiieCco
Copy link
Contributor

RiieCco commented Dec 14, 2020

@kingthorin, i am on it again!

@RiieCco
Copy link
Contributor

RiieCco commented Feb 5, 2021

Almost finished, need to put in some scan output results in the file. Had a couple of busy weeks but i expect to finish it soon for a first PR ^^

@RiieCco
Copy link
Contributor

RiieCco commented Apr 3, 2021

@kingthorin, I will create the PR next week! :-)

@github-actions
Copy link

Please comment if you are still working on this issue, as it has been inactive for 30 days. To give everyone a chance to contribute, we are releasing it to new contributors.

@github-actions
Copy link

github-actions bot commented Sep 15, 2021

Please comment if you are still working on this issue, as it has been inactive for 90 days. To give everyone a chance to contribute, we are releasing it to new contributors.

@RiieCco
Copy link
Contributor

RiieCco commented Sep 15, 2021

I am still working on this one, sadly i got a massive burn out after wanting to commit this.
I can send to anybody who wants to pick up on this what i already had written on the subject?

Otherwise i will commit in due time when i am getting back on track again :-)

@kingthorin
Copy link
Collaborator

kingthorin commented Sep 15, 2021

No problem, thanks for the update. Whenever you get to it is great. Don’t let stale bot get to ya.

@RiieCco
Copy link
Contributor

RiieCco commented Sep 15, 2021

@kingthorin hahaha will do, thanks! ^^

@alex97saba
Copy link

Hi everyone,
How far did you go in the project? I would like to continue your work if help is needed.
Thank you

@ThunderSon
Copy link
Collaborator

@RiieCco Hello mate! :)
Would you be able to coordinate with @alex97saba to move the needle on this? Maybe provide write access on the branch and then open a draft PR. Let us know if we can help.

@RiieCco
Copy link
Contributor

RiieCco commented Sep 21, 2021

Hey @ThunderSon sure thing!

It has literally been 6months since i last touched a laptop so i will need to check things a bit.
@alex97saba thank you very much for helping out man! i will set up everything as soon as possible!
Also, can i find you on the OWASP slack channel for discussions etc? :-)

Cheers!

@ThunderSon
Copy link
Collaborator

I am not sure @alex97saba is on slack, but there is a channel testing-guide if you need that :)

@alex97saba
Copy link

Thank you very much @RiieCco, I just wrote you on slack (hoping is the right person :) ).

@kingthorin kingthorin added the HacktoberFest Issues which are good candidates for HacktoberFest: https://hacktoberfest.digitalocean label Oct 1, 2021
@kingthorin kingthorin removed the HacktoberFest Issues which are good candidates for HacktoberFest: https://hacktoberfest.digitalocean label Nov 4, 2021
@github-actions
Copy link

Please comment if you are still working on this issue, as it has been inactive for 90 days. To give everyone a chance to contribute, we are releasing it to new contributors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests