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

kippo-detect.nse #72

Open
ghost opened this issue Mar 6, 2015 · 7 comments
Open

kippo-detect.nse #72

ghost opened this issue Mar 6, 2015 · 7 comments

Comments

@ghost
Copy link

ghost commented Mar 6, 2015

can i submit a new script here?

https://github.com/x-42/nmap-kippo-detect.nse/blob/master/kippo-detect.nse

@cldrn
Copy link
Member

cldrn commented Apr 16, 2015

Do we have this as a signature already?

@ghost
Copy link
Author

ghost commented Apr 16, 2015

no, not that i'm aware of. at least not in 6.0.0. not sure about the newer version. script works good though!

@p-l-
Copy link

p-l- commented Apr 16, 2015

Hi!

Maybe it would be nice to check with the development version from the repository before!

I've just read your script and have a couple of comments:

  • based on my understanding of your code, I believe it would be possible to do the job with a simple fingerprint instead of adding a new script. Am I wrong?
  • Do you really want shortport.port_or_service(22, 'telnet', 'tcp')? and not 'ssh'? Or is it on purpose, because Nmap version scan says "telnet" when run against such a server?

@ghost
Copy link
Author

ghost commented Apr 16, 2015

i guess a fingerprint could possibly work.

my initial findings were that i was able to get TCP 22 to spit out data that could be used to fingerprint the kippo service, when connecting via a telnet client:

there's also an existing metasploit module, which works well and uses the technique i describe:

@ghost
Copy link
Author

ghost commented Apr 17, 2015

@dmiller-nmap thoughts?

@dmiller-nmap
Copy link

Version detection will not work for this, since the SSH banner is matched on the Null probe, so doing a NSE script is the right move. But @cldrn is correct, the portrule should be shortport.port_or_service(22,"ssh"). The actual data sent can be any 5 bytes that does not start with "\x00".

@p-l-
Copy link

p-l- commented Apr 17, 2015

@dmiller-nmap thanks for the explanation, makes sense.

If the string can be anything that does not start with "\x00", would it be possible (and useful) to make it random?

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

No branches or pull requests

3 participants