[go: nahoru, domu]

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

Added tests for CVE-2017-10271 #514

Closed
wants to merge 2 commits into from
Closed

Added tests for CVE-2017-10271 #514

wants to merge 2 commits into from

Conversation

sempf
Copy link
Contributor
@sempf sempf commented Jan 23, 2018

This is my first pull request for this repo, so please let me know how I can improve. I have a moderately large custom database of items for tests long passed, can probably check them in now. This one is being actively exploited and isn't checked for by the commercial tools, apparently.

@tautology0
Copy link
Collaborator
tautology0 commented Jan 23, 2018

First off, thanks for the PR.

Some comments - the tid (the first field) is the same on each line which would cause it to fail validation.

The tests itself seems to match response code == 500 && code != 404. This could create some false positives. Does the server return anything unique with the 500? (Hoping we get something useful back.)

@sempf
Copy link
Contributor Author
sempf commented Jan 23, 2018

Thanks for commenting!

I copied the duplicated tid from 007166, I thought it was supposed to be duplicated if it was for the same vulnerability. I can fix that.

Your second question is a little harder. Is it possible to send in POST data?

@tautology0
Copy link
Collaborator

Each item should have a unique; it's a bit of a pain, but it made sense when Nikto first came out...

You can have POST requests, the format of a test is:
Test-ID, OSVDB-ID, Tuning Type, URI, HTTP Method, Match 1, Match 1 Or, Match1 And, Fail 1, Fail 2, Summary, HTTP Data, Headers

So if you set HTTP Method to POST and set HTTP Data to the contents. Content-Length etc should be worked out automagically for you.

@sempf
Copy link
Contributor Author
sempf commented Jan 24, 2018

OK, I'm on it.

@sullo
Copy link
Owner
sullo commented Jan 29, 2018

@tautology0 what would make sense now for test IDs? :)

@sempf
Copy link
Contributor Author
sempf commented Jan 29, 2018

Jumping in, but: I think it makes sense now. I just noticed that there are other tests that share the same tid and I tried to follow that pattern.

I'll have an edited pull request tomorrow.

@sullo
Copy link
Owner
sullo commented Jan 29, 2018

Those duplicates were a mistake--I just corrected them (a6e3d7f). The next available test ID now is:
007182

Thanks & sorry for the confusion!

@sempf
Copy link
Contributor Author
sempf commented Jan 30, 2018

OK, I am testing my new changes, if everything goes well I'll have an edited pull request today.

@sullo
Copy link
Owner
sullo commented Jan 30, 2018

You can run with option -dbcheck to validate there are no duplicate IDs and other syntax issues (FYI there is currently one reported in a plugin but I think it needs an exception).

@sempf
Copy link
Contributor Author
sempf commented Feb 4, 2018

I realize that no one is in a rush, but it was harder than I thought to find a distinctive response string that could be used to weed out false positives. I'm working on it, and will update ASAP.

@sullo
Copy link
Owner
sullo commented Feb 4, 2018 via email

@sempf
Copy link
Contributor Author
sempf commented Feb 5, 2018

Alright, the answer is that if you get a 404 you aren't vulnerable, and if you get a 500 you are. Doesn't matter what payload you send in.

How would you like to represent that in the tests?

@sullo
Copy link
Owner
sullo commented Feb 5, 2018 via email

@sempf
Copy link
Contributor Author
sempf commented Feb 8, 2018

I discovered that if you perform a GET on the endpoints the vulnerable servers will return some strings that can be confirmed. They are a 200 response code. Also renumbered. Not sure what the conflicts are.

sullo added a commit that referenced this pull request Feb 9, 2018
@sullo
Copy link
Owner
sullo commented Feb 9, 2018

The conflict was a test which was submitted just before yours. I've resolved and, I think, merged. Thanks for submitting & taking the time to understand how they work!

@sullo sullo closed this Feb 9, 2018
@sempf
Copy link
Contributor Author
sempf commented Feb 9, 2018

Thank you very much. I've used Nikto for years; it's a pleasure to finally contribute. I have a list of other tests I'll add in here in the next couple of months.

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

Successfully merging this pull request may close these issues.

None yet

3 participants