Navigation Menu

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 exploit for IBM DRM RCE (CVE-2020-4427, CVE-2020-4428, CVE-2020-4429) #13300

Merged
merged 12 commits into from May 5, 2020

Conversation

pedrib
Copy link
Contributor

@pedrib pedrib commented Apr 21, 2020

This PR adds an exploit for an unauthenticated remote code execution as root in IBM Data Risk Manager. This is a 0day at the time of this PR, check:
https://github.com/pedrib/PoC/blob/master/advisories/IBM/ibm_drm/ibm_drm_rce.md

See also: #13301 and #13304.

@pedrib
Copy link
Contributor Author

pedrib commented Apr 21, 2020

I am waiting on the CVE IDs, but please go ahead with the review while we wait.

@gwillcox-r7 gwillcox-r7 added the needs-testing-environment PRs that need community testing and/or vulnerable test targets before they're able to be landed label Apr 21, 2020
@gwillcox-r7
Copy link
Contributor

Added needs-testing label as from looks of things, only those with an active service contract can download the IBM DRM software.

@pedrib
Copy link
Contributor Author

pedrib commented Apr 21, 2020

@gwillcox-r7 I can send pcaps if needed, same for PR #13301

@gwillcox-r7
Copy link
Contributor

gwillcox-r7 commented Apr 21, 2020

@gwillcox-r7 I can send pcaps if needed, same for PR #13301

If you can send PCAPs for both this PR and for #130001 to msfdev[at]metasploit.com this would greatly assist our team in helping to confirm info. Thanks!

@gwillcox-r7
Copy link
Contributor

@pedrib If you could also send a demo of both of the modules to the same email address this would also be helpful.

@pedrib
Copy link
Contributor Author

pedrib commented Apr 22, 2020

@gwillcox-r7 a demo? Like an asciinema cast?

@wvu wvu self-assigned this Apr 22, 2020
Copy link
Contributor

@acammack-r7 acammack-r7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for bringing us to the 0-day party! Detection seems a bit wobbly, though, and I think we would want to properly parse the JSON responses instead of just using regexes. I think there are also some code styling things that rubocop -a can help fix.

modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
@pedrib
Copy link
Contributor Author

pedrib commented Apr 24, 2020

@acammack-r7 all done, and thanks for showing me rubocop, will use it from now on on all my submissions.

I'm still waiting for those CVE, do you mind waiting or want to merge these PR now? If so I can send you the pcaps

@wvu
Copy link
Contributor

wvu commented Apr 28, 2020

Are you still waiting for CVEs?

@wvu wvu added the blocked Blocked by one or more additional tasks label Apr 28, 2020
@pedrib
Copy link
Contributor Author

pedrib commented Apr 28, 2020

@wvu-r7 all done. Yes I am still waiting, there's emails back and forth between myself and MITRE. Seems like IBM are the ones that have to issue CVE for their own product, and they are making me wait... I wonder why

@pedrib
Copy link
Contributor Author

pedrib commented Apr 30, 2020

Guys, I have removed all CVE and other TODO-links from these modules to get them ready for merging.
I will add all the info later (CVE, more advisory / vendor links, confirm affected versions). IBM is not responding to me at the moment, so once they do I'll send another PR.

I have sent pcaps to your email address.
This comment also applies to PR #13301 and #13304 .

@pedrib
Copy link
Contributor Author

pedrib commented May 1, 2020

@wvu-r7 finally we have CVE! Added them to this module and PR #13301 + PR #13304

@wvu wvu removed the blocked Blocked by one or more additional tasks label May 5, 2020
Copy link
Contributor

@wvu wvu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed module doc.

wvu
wvu previously requested changes May 5, 2020
Copy link
Contributor

@wvu wvu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code reviewed. If I missed anything, apply comments everywhere they apply.

modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
modules/exploits/linux/http/ibm_drm_rce.rb Outdated Show resolved Hide resolved
@pedrib
Copy link
Contributor Author

pedrib commented May 5, 2020

ok all done!

@wvu
Copy link
Contributor

wvu commented May 5, 2020

Squashed and rebased!

Update documentation/modules/exploit/linux/http/ibm_drm_rce.md

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update documentation/modules/exploit/linux/http/ibm_drm_rce.md

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update documentation/modules/exploit/linux/http/ibm_drm_rce.md

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update ibm_drm_rce.md

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

make final changes!

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

Update modules/exploits/linux/http/ibm_drm_rce.rb

Co-authored-by: wvu-r7 <wvu-r7@users.noreply.github.com>

final final final
@wvu wvu changed the title Add exploit for IBM DRM RCE Add exploit for IBM DRM RCE (CVE-2020-4427, CVE-2020-4428, CVE-2020-4429) May 5, 2020
@wvu
Copy link
Contributor

wvu commented May 5, 2020

Release Notes

This adds a remote root exploit for IBM Data Risk Manager versions 2.0.3 and below. Version 2.0.6 might also be vulnerable. The exploit covers:

@wvu wvu merged commit e0a67f4 into rapid7:master May 5, 2020
@pedrib pedrib deleted the ibm_drm_rce branch May 5, 2020 17:45
@tperry-r7 tperry-r7 added the rn-modules release notes for new or majorly enhanced modules label May 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs module needs-testing-environment PRs that need community testing and/or vulnerable test targets before they're able to be landed rn-modules release notes for new or majorly enhanced modules
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants