Tag: metasploit

  • Metasploit ile Cisco IOS penetrasyon testi

    Metasploit ile Cisco IOS penetrasyon testi

    Metasploit Framework ve ticari Metasploit ürünleri her zaman ağ cihazlarının güvenliğini değerlendirmek için özellikler sunmuştur. En son sürümle birlikte, bunu bir adım daha ileri götürdük ve Cisco IOS cihazları için sızma testi sürecini hızlandırmaya odaklandık. Bireysel modüller ve destekleyici kütüphaneler açık kaynak çerçevesine eklenirken, ticari ürünler artık bu modülleri birbirine bağlayarak ağdaki tüm savunmasız cihazları hızlı bir şekilde ele geçirebilir. Aşağıdaki ekran görüntüsü, başarılı bir sızma testinin nasıl görünebileceği konusunda size bir fikir vermektedir:

    Ağdaki Cisco IOS cihazlarını tarama ve keşfetme

    Öncelikle belirtmeliyim ki, düzgün yapılandırılmış bir Cisco cihazının ele geçirilmesi zordur. Tıpkı diğer yazılımlarda olduğu gibi IOS’ta da güvenlik açıkları mevcuttur, ancak yalnızca birkaç kişi bellek bozulması kusurlarını kod yürütmeye dönüştürmeyi başarmıştır. Bu nedenle, IOS cihazlarına yönelik gerçek dünya saldırılarının çoğu iki alana odaklanır: kötü yapılandırma ve zayıf parolalar.

    Ayrıntılara girmeden önce, Cisco IOS güvenlik testlerindeki mevcut “en son teknolojiye” bir göz atalım. Güvenlik açığı tarayıcıları, sürüm dizelerini karşılaştırarak güncel olmayan IOS kurulumlarını belirlemede harika bir iş çıkarıyor. Bu, bir cihazın yamalı olup olmadığını belirlemek için iyi çalışır, ancak IOS istismarı konusunda derin bir geçmişe sahip olmayan bir sızma test uzmanına yardımcı olmaz. Birkaç istisna dışında, bu durum üretim ortamlarında yaygın olarak açıkta kalan az sayıda hizmeti geride bırakıyor. Bu hizmetler arasında SNMP, Telnet, SSH ve HTTP bulunur. Ayrıca Finger’ın çalıştığını veya SIP ve H.323 gibi medya protokolleri için röle hizmetleri bulabilirsiniz. Uzaktan erişim için, çoğumuzun çalışması gereken ilk dört hizmettir ve hatta bu hizmetlerden herhangi birinin ağa açık olduğu düzgün yapılandırılmış bir yönlendirici bulmak nadirdir.

    Cisco IOS HTTP hizmetinde, işletim sisteminin eski sürümlerinde bilinen birkaç güvenlik açığı bulunmaktadır. Sızma test uzmanları olarak bizim için önemli olan iki güvenlik açığı da kimlik doğrulama atlatma ile ilgilidir. İlk güvenlik açığı olan CVE-2000-0945, IOS Aygıt Yöneticisi arayüzünde eksik kimlik doğrulama ile ilgilidir. Bu güvenlik açığı, web arayüzü üzerinden IOS kurulumuna kimlik doğrulaması yapılmamış, genellikle ayrıcalıklı erişim sağlar. İkinci güvenlik açığı olan CVE-02001-0537 ise, saldırganın HTTP hizmetine yapılan istekte “15”ten daha yüksek bir kimlik doğrulama düzeyi belirterek kimlik doğrulamasını atlamasına olanak tanır. Bu da web arayüzü üzerinden cihaza ayrıcalıklı erişim sağlar. Açık kaynaklı Metasploit Framework, bu güvenlik açıklarından yararlanmak için iki modül sunmaktadır:

    Metasploit Express ve Metasploit Pro, keşif taraması sırasında Cisco IOS HTTP servislerini otomatik olarak tanıyacak, bu iki güvenlik açığını kontrol edecek ve çalışan cihaz yapılandırmasına erişim sağlamak için bunları istismar edecektir.

    Bu iki bilinen güvenlik açığına ek olarak, cihaz şifresi HTTP servisine yönelik kaba kuvvet saldırısı yoluyla da belirlenebilir. HTTP protokolü, Telnet ve SSH gibi daha yavaş, terminal tabanlı servislere kıyasla kaba kuvvet saldırısına karşı nispeten hızlıdır. Metasploit Express ve Metasploit Pro, bir IOS cihazına yönelik başarılı bir HTTP kaba kuvvet saldırısından sonra çalışan cihaz yapılandırmasını otomatik olarak ele geçirecektir.

    Bahsetmek istediğim bir sonraki hizmet SNMP. Garip bir şekilde, SNMP genellikle güvenli yönlendiricilerde açıkta bırakılıyor. Bunun nedeni, SNMP’nin ne olduğu ve ne yaptığına dair genel algı olabilir. Basit Ağ Yönetim Protokolü, çok çeşitli sistemlerde standart bir formatta bilgi sorgulamak için harika bir araçtır. Anahtarlayıcınızı veya yönlendiricinizi kimin ürettiğinden bağımsız olarak, SNMP etkinleştirilmiş ve yapılandırılmışsa, hemen hemen her SNMP istemcisi ve izleme yazılımı bu cihazla çalışacaktır.

    Birçok ağ yöneticisinin farkında olmadığı şey, SNMP’nin ortaya çıkardığı bilgi derinliğinin yanı sıra, yazılabilir bir SNMP topluluğunun bir cihaz üzerinde tam kontrol sağlamak için kullanılabileceği gerçeğidir. Cisco IOS örneğinde, yazılabilir bir SNMP topluluğu, çalışan cihaz yapılandırmasını indirmek VE çalışan yapılandırmayı değiştirmek için kullanılabilir. Telnet devre dışı bırakılmış ve karmaşık bir seri parolaya sahip bir yönlendirici, yazılabilir bir SNMP topluluğu aracılığıyla neredeyse anında ele geçirilebilir. Metasploit Framework, geçerli toplulukları tanımlamak ve bunların salt okunur mu yoksa okuma-yazma mı olduğunu belirlemek için yaygın parolaların bir kelime listesini kullanabilen, yardımcı bir modül olarak yazılmış bir SNMP kaba kuvvet aracı sağlar. Temel kaba kuvvet modülüne ek olarak, Metasploit artık (topluluk katkıda bulunan “pello” tarafından gönderilen) yazılabilir bir SNMP topluluğunu kullanarak çalışan cihaz yapılandırmasını indirebilen bir modül içermektedir.

    Metasploit Express ve Metasploit Pro, savunmasız cihazların yapılandırma dosyalarını otomatik olarak ele geçirmek için bu iki modülü kullanır. Keşif taraması sırasında, SNMP kaba kuvvet aracı, yaygın toplulukların küçük bir kelime listesiyle arka planda başlatılır. Bu parolalardan herhangi biri çalışırsa ve topluluk yazılabilir olarak algılanırsa, ürün yerel bir TFTP hizmeti yapılandırır ve çalışan yapılandırma dosyasını indirir. SNMP protokolü artık ürünün akıllı kaba kuvvet bileşenine entegre edildiğinden, aynı durum kaba kuvvet çalıştırması sırasında tahmin edilen topluluklar için de geçerlidir. Kaba kuvvet bileşeni, proje için dinamik olarak oluşturulan parolalara ek olarak, son derece hassas bir topluluk listesi kullanır. Bu hassas liste, web formlarından yapıştırılan yapılandırma dosyalarını kazımayı, gömülü parolaları çıkarmayı ve kaba kuvvetle kırmayı ve ardından sonuçları analiz ederek en sık kullanılan parolaları (SNMP toplulukları dahil) belirlemeyi içeren bir araştırma projesinden türetilmiştir. Bu projenin sonuçları şaşırtıcıydı; Cisco dokümanlarında yer alan örnek bir yapılandırma nedeniyle “public@es0” ve “private@es0” ifadelerinin yaygın olarak kullanıldığını asla tahmin edemezdim.

    Son olarak ele almak istediğim iki protokol ise Telnet ve SSH. Bu protokollerin her ikisi de hedef cihazda uzaktan komut satırına erişim sağlar, genellikle ayrıcalıksız bir kullanıcı olarak. Sızma testi açısından en belirgin fark, SSH’nin genellikle uzaktan kullanıcı adı ve şifre bilgisi gerektirmesi, Telnet’in ise genellikle yalnızca şifreyle kimlik doğrulaması ile yapılandırılmasıdır. Metasploit Framework, bu protokollerin her ikisine de kaba kuvvet saldırısı yapmak için modüller içerir ve kaba kuvvet saldırısı başarılı olduğunda otomatik olarak etkileşimli bir oturum oluşturur.

    Metasploit Express ve Metasploit Pro, Telnet ve SSH protokollerini kullanan ağ cihazlarına yönelik saldırıları her zaman desteklemiştir, ancak en son sürümle birlikte, parola analizi araştırmamızdan elde edilen optimize edilmiş parola listesini kullanmaya başladılar. Bu, parola listesinin en üstüne bazı alışılmadık parolaların çıkmasına neden olur, ancak gerçek dünya yapılandırmalarına karşı son derece etkilidir. Çok fazla ayrıntı vermeden şunu söyleyebilirim ki, bazı İnternet Servis Sağlayıcıları (ISP’ler) müşteriye ait ekipmanları yapılandırmak için statik parolalar kullanmalarıyla ünlüdür.

    Cisco IOS cihazlarında Telnet veya SSH protokolleri aracılığıyla bir oturum kurulduktan sonra, ticari ürünlerdeki Kanıt Toplama özelliği otomatik olarak sürüm bilgilerini, aktif kullanıcı listesini alacak ve yaygın parolalar listesiyle etkinleştirme parolasını kaba kuvvet yöntemiyle kırmaya çalışacaktır. Toplama komut dosyası etkinleştirme erişimi elde edebilirse, çalışan yapılandırma da dahil olmak üzere sistemden ek bilgileri otomatik olarak dışa aktaracaktır.

    Yukarıda listelenen saldırılar yeni bir şey değil. Yeni olan, Metasploit kullanılarak kolayca gerçekleştirilebilmeleri ve ticari ürünlerin bunları birbirine zincirleyerek savunmasız cihazları otomatik olarak ele geçirebilme yeteneğidir. Bu saldırılar, mevcut kapsamımızın sadece bir uzantısı ve ticari ürünlerimizin gelecekteki geliştirme yol haritasında yer alanların bir ipucudur.

    Şimdiye kadar bahsetmediğim bir şey de, Cisco IOS yapılandırma dosyalarını ele geçirdikten sonra onlarla ne yaptığımızdır. Bu dosyalar, cihazın çalışan yapılandırmasını içerir; buna vty şifreleri, etkinleştirme şifreleri, VPN anahtarları, SSL sertifikaları ve WiFi kimlik bilgileri dahildir. Metaspoit, hassas verileri ayıklamak ve bunları bir güvenlik ihlalinin kanıtı veya çalınmış kimlik doğrulama bilgileri olarak saklamak için bu yapılandırma dosyalarını otomatik olarak ayrıştırır. Aşağıdaki ekran görüntüsü, Telnet vty şifresinin, ardından etkinleştirme şifresinin kaba kuvvet saldırısıyla kırılmasının ve ardından yapılandırmanın dökümünün ve ayrıştırılmasının çıktısını göstermektedir:

    Keşfedilen Cisco IOS cihazlarındaki güvenlik açıklarından yararlanma

    Metasploit Express ve Metasploit Pro, ağdaki diğer cihazlara erişim sağlamak için bu yapılandırma dosyalarından elde edilen kimlik bilgilerini otomatik olarak yeniden kullanabilir. Zayıf bir SNMP topluluğu aracılığıyla bir Cisco cihazını kırıp vty şifresinin “ciscorules!” olduğunu keşfederseniz, kaba kuvvet bileşeninin “yalnızca bilinen” profilini kullanarak bu şifreyi herhangi bir protokol üzerinden ağdaki diğer herhangi bir cihaza karşı otomatik olarak deneyebilirsiniz. Diğer cihazlara erişim sağladığınızda, yapılandırma dosyaları elde edilir ve tüm süreç yeniden başlar. Bir Cisco yönlendiricisinden alınan bir şifreyi bir intranet sitesinin giriş sayfasına kolayca uygulayabilir veya geleneksel bir güvenlik açığı yoluyla elde edilen bir şifreyi kullanarak çok sayıda ağ cihazına erişim sağlayabilirsiniz. Geliştirme hedeflerimizden biri, kullanıcılarımızın her zaman belirli bir ağdaki en zayıf halkayı belirleyip istismar edebilmelerini sağlamaktır.

    Bu yazının sonuna geldik, lütfen yeni özellikleri deneyin ve herhangi bir sorunuz veya iyileştirme öneriniz varsa yorumlar aracılığıyla bize bildirin.

  • Коннектим полезную нагрузку Metasploit Framework через NAT

    Коннектим полезную нагрузку Metasploit Framework через NAT

    Когда я провожу тестирование на проникновение и работаю в сети, где интернет раздается NAT, например из дома через маршрутизатор беспроводной сети, то мне необходимо настроить проброс портов на своем маршрутизаторе, чтобы полезная нагрузка, например Meterpreter смогла подключаться к машине с Metasploit Framework.

    Лучшим вариантом было бы подключиться к Интернету напрямую с белым IP адресом, но это слишком затратно или невозможно, например из интернте-кафе. Настройка проброса портов не так уж и сложна, но проверить её работоспособность может не каждый. Жаль, что данный подход нельзя использовать при подключении через 3G модем или публичный Wi-Fi, потому как мне в этом случае изначально выдаётся серый IP адрес, и конечно же доступ к маршрутизатору провайдера для настройки проброса портов мне никто не предоставит.

    В моём случае виртуальная машина с установленным Metasploit Pro имеет IP-адрес 192.168.1.169 в локальной сети. Обычно я выбираю порт 4444 в качестве рабочего порта для бэкконнекта полезной нагрузки, чтобы избежать путаницы. Сейчас я покажу пример на маршрутизаторе Asus, другой маршрутизатор конечно же может иметь совершенно иной Web-интерфейс.

    проброс порта к локальной машине для бэкконекта meterpreter

    Мой маршрутизатор не поддерживает диапазон для проброса трафика на локальный порт, в противном случае я мог бы указать диапазон 1024-65535 и для внешнего диапазона портов и для внутренних локальных портов. Это дало бы полезной нагрузке большее количество портов для возможности обратного подключения, что увеличило бы возможное количество сплоитов, которые одновременно можно было бы запустить на целевом исследуемом хосте. Не стесняясь экспериментировать с этим, если маршрутизатор поддерживает это – можно сделает любое тестирование на проникновение быстрее и получить больше шансов на успех, но я покажу как работать через один единственный порт, который был уже назначен.

    Теперь давай проверим, как работает проброс порта на маршрутизаторе, который я только настроил. Для этого во вкладке Модули нахожу модуль “Generic Payload Handler“:

    metasploitable запуск слушателя Generic payload handler

    И запускаю этот модуль. Теперь мне нужно узнать мой публичный IP адрес. Это можно посмотреть в настройках маршрутизатора, или просто перейдя на сайт bgp.tools при условии конечно же, что провайдер для моего договора его предварительно мне выдал, а не назначил мне серый адрес и я оказался за двойным NAT как сейчас обычно это случается.

    Далее ввожу этот публичный IP адрес в поле Listener Host, оставляю список портов слушателя по умолчанию 4444-4444. Здесь мне нужно использовать именно диапазон, а не значение, в противном случае модуль не сработает. Запускаю модуль. Теперь у меня есть активный слушатель, работающий на моей Metasploit Framework машине, и порт 4444, который проброшен через мой домашний роутер на эту же машину.

    Теперь проверю, работает проброс портов или нет. На сайте www.canyouseeme.org ввожу порт 4444 в поле и нажимаю кнопку Can You See Me. Если я всё сделал правильно, то увижу сообщение что-то вроде этого:

    проверка бэкконекта на определённый порт через сторонний сайт или сервис

    Если я получил сообщение, что порт не доступен, это может быть потому, что порт может быть заблокирован самим провайдером в некоторых случаях, и мне нужно будет найти незаблокированный порт методом перебора или научного тыка.

    Перед тем, как начать новое тестирование на проникновение, после проверки бэкконнекта мне нужно остановить запущенную Generic Payload Handler задачу. Теперь при выборе сплоита я буду указывать Listener Port 4444. Проще говоря, настроить бэкконнект легко, но всё упирается в белый IP-адрес, который можно получить у провайдера за небольшую дополнительную плату по договору оказания предоставления услуг доступа в сеть интернет.

  • Скам процессинга со шкафчика провайдера

    Скам процессинга со шкафчика провайдера

    Обычно провайдеры раскидывают своё оборудование на чердаках домов или в подвалах, а иногда телекоммуникационный шкаф висит на первом или на последнем этаже прямо в подъезде многоквартирного дома.

    тимлиды процессинга обсуждают предстоящий скам

    Особенно радует то, что для подключения в этом случае светить свои паспортные данный или адрес перед провайдером не требуется, потому как договор на такое подключение оформлять вовсе не нужно. Раньше в таких местах при помощи Ettercap NG или Wireshark обычно можно было послушать много разных и интересных вещей, таких как CDPVTPDTPSTPPVSTOSPFHRSPIS-IS или RIP.

    Подключиться к такой железке как показано на видео достаточно просто, для этого понадобится простенький ноутбук и провод с обжатыми концами RJ45. Также не забудь захватить ещё и консольный кабель – он тебе тоже может пригодиться.

    И что такого интересно можно там найти сейчас и для чего всё это нужно?

    На коммутаторе уровня доступа большинство портов настроены под абонентов и ничего особенного ты там не увидишь, вернее сказать не увидишь там абсолютно ничего. В этом случае наибольший интерес представляют транковые порты, они как правило самые последние на коммутаторе доступа. На некоторых моделях порты представлены в комбо варианте в виде обычного порта Gigabit Ethernet и розетки под оптический модуль SFP. На новых моделях Eltex последние четыре порта настраиваются под trunk и используются модули SFP+ уже на 10 Gigabit.

  • Утечки маршрутизации и скам процессинга

    Утечки маршрутизации и скам процессинга

    Представьте себе Интернет сам по себе вдруг решил, что ты теперь живёшь где-нибудь в центре Азии, и весь трафик, который должен идти на твой ноут или смартфон, начинает блуждать по ряду других стран, прежде чем добраться до твоих устройств, но тебя там нет, ты по-прежнему у себя дома и не собираешься вообще никуда ехать. Все твои TCP и IP пакеты, которые обычно имеют маршрут до твоего провайдера, теперь гуляют в другом сегменте сети. Письма, которые тебе кто-то отправляет либо не доставляются, или их читают уже другие люди – это примерно то, о чём мне рассказал сбежавший из США в июне Эдвард Сноуден.

    как можно угнать чужой IP-адрес при помощи BGP

    Ни одну банковскую операцию ты провести не можешь. HTTPS сообщает о недопустимых ошибках при получении сертификатов. Конфиденциальность, целостность и доступность твоих персональных данных полностью нарушена, причём не только твоих, и всё из-за того, что твой IP адрес кто-то благополучно угнал.

    А как вообще возможно угнать чей-то IP-адрес?

    Автономная система (Multihomed AS) в нашем случае принадлежит NedZone BV Интернет-провайдеру в Нидерландах. Где она зарегистрирована можно посмотреть с помощью запросов Whois для AS 25459 по адресу https://bgp.he.net/AS25459

    По данным RIPE эта автономная система объявляла и приземляла 369 префиксов в течение последних 30 дней, из них 310 были необычно малы. Обычно объявление префикса при помощи BGP происходит по маске /24 или 256 уникальных IPv4-адресов пространства Интернет.

    Однако в нашем случае их было слишком большое количество, причем с маской /32, то есть объявлялся всего лишь один единственный IP-адрес, с которого и осуществлялся потом весь скам процессинга. Любой поставщик услуг Интернета (ISP), который является частью глобальной сети Border Gateway Protocol (BGP) может объявлять маршруты, которыми он владеет. У других провайдеров просто обновляется таблица маршрутизации, в которой адреса прописываются уже в другом месте, а затем обновления уже распространяются по интернету в другие сети.

    Обновления маршрутов от AS 25459 можно увидеть по адресу:
    https://stat.ripe.net/resource/AS25459
         
    Примеры некоторых из владельцев диапазонов и пространств IP-адресов, которые были захвачены:

    1 AMAZON-AES – Amazon.com, Inc.
    2 AS-7743 – JPMorgan Chase & Co.
    1 ASN-BBT-ASN – Branch Banking and Trust Company
    2 BANK-OF-AMERICA Bank of America
    1 CEGETEL-AS Societe Francaise du Radiotelephone S.A
    1 FIRSTBANK – FIRSTBANK
    1 HSBC-HK-AS HSBC HongKong
    1 PFG-ASN-1 – The Principal Financial Group
    2 PNCBANK – PNC Bank
    1 REGIONS-ASN-1 – REGIONS FINANCIAL CORPORATION

    Некоторые пространства в этом списке принадлежали этому провайдеру, однако размер префикса был изменен намеренно, что выглядит весьма странно. Большая же часть анонсировавшегося блоков IP-адресов принадлежит совершенно другим хостинг-провайдерам на других концах планеты.

    Более подробно можно посмотреть на видео и прочесть в презентации о том как осуществляется скам процессинга с использованием утечек маршрутов BGP глобальной таблицы маршрутизации сети интернет.