0
点赞
收藏
分享

微信扫一扫

局部加权回归

boomwu 2024-11-06 阅读 9

声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章

声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险,并遵循相关法律法规。


本文主要讲解search命令的一些用法,以及如何去搜索Mongodb未授权登录的设备和使用jenkins服务设备。

1、shodan search --limit 10 --fields ip_str,port net:208.88.84.0/24(美国国家安全局的一个网段)

 

2、shodan search --limit 10 --fields ip_str,port org:nsa has_vuln:True

 

3、 shodan search --limit 10 --fields ip_str,port hostname:google

 

4、shodan search --limit 10 --fields ip_str,port country:cn http.waf:safedog

 

 5、shodan search --limit 10 --fields ip_str,port country:cn http.html:login
 6、shodan search --limit 10 --fields ip_str,port "Mongodb server information -authentication" port:27017

编写python脚本批量测试

from pymongo import MongoClient
import socket

def check_mongodb(ip):
    try:
        client = MongoClient(f"mongodb://{ip}:27017", serverSelectionTimeoutMS=2000)
        client.admin.command('ismaster')  # 测试连接是否成功
        print(f"[+] '连接成功': {ip}")
    except Exception as e:
        print(f"[-] '连接失败': {ip} ({e})")

with open('ips.txt', 'r') as file:
    ips = file.readlines()
    for ip in ips:
        ip = ip.strip()
        check_mongodb(ip)

使用NoSQLBooster进行验证

7、Jenkins

enkins 是一个开源的持续集成(CI)和持续交付(CD)工具,广泛用于自动化软件构建、测试和部署流程。它具有插件支持,能够与几乎任何工具和平台集成,方便从代码进行管理提交到生产部署的整个流程。

搜索语句:shodan search --limit 100 --fields ip_str "X-Jenkins" OR "Set-cookie:JSESSIONID" http.title:"Dashboard"

 

使用python脚本测试

import requests

# 设置请求的 Headers
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36'
}


def check_jenkins(ip):
    url = f'http://{ip}:8080/'
    try:
        # 访问 Jenkins 主页面
        response = requests.get(url, headers=headers, timeout=5)
        if "Dashboard [Jenkins]" in response.text:
            print(f"[+] '检测到 Jenkins' {ip}")

            # 检查是否存在未授权访问
            script_url = f"{url}script"
            script_response = requests.get(script_url, headers=headers, timeout=5)
            if script_response.status_code == 200:
                print(f"[!] '存在潜在的未经授权的访问' {script_url}")
            else:
                print(f"[-] '不存在未经授权的访问' {script_url}")
        else:
            print(f"[-] '未发现Jenkins' {ip}")
    except requests.RequestException as e:
        print(f"[!] '访问错误' {ip}: {e}")


# 读取 IP 列表并检测
with open("ips.txt", "r") as file:
    ips = file.readlines()
    for ip in ips:
        ip = ip.strip()
        check_jenkins(ip)

举报

相关推荐

0 条评论