shodan(五)连接Mongodb数据库&Jenkins&org、net、查看waf命令

声明:学习素材来自b站up【泷羽Sec】,侵删,若阅读过程中有相关方面的不足,还请指正,本文只做相关技术分享,切莫从事违法等相关行为,本人一律不承担一切后果

引言:

1.Shodan 是一个专门用于搜索连接到互联网的设备的搜索引擎。与传统搜索引擎(如 Google)不同,Shodan 的焦点不在于网页内容,而是寻找物联网设备、服务器和其他网络设备的开放端口和服务。用户可以通过 Shodan 查找特定类型的设备,如摄像头、路由器、服务器、打印机等,甚至可以根据设备的地理位置或软件版本进行搜索。

2.Shodan 的工作原理是不断扫描互联网,收集设备的元数据,包括 IP 地址、端口信息、服务和协议等。该搜索引擎能够揭示潜在的网络安全漏洞,也因此被安全研究人员和黑客广泛使用。Shodan 也提供了一些工具和API,方便用户进行更深入的分析和集成。

目录

一、搜索网段:net

二、搜索一些组织的IP:org

三、搜索一些网址所在组织的IP:hostname

四、查找一些安装了安全狗waf的网站

五、检索一些html前端页面带有关键字的ip,用法和title类似

六、MongoDB数据库未授权登录

七、Jenkins未授权访问

[1.Jenkins 组件介绍](#1.Jenkins 组件介绍)

2.shodan搜索jenkins



一、搜索网段:net

  1. net:后面跟上网段
    这边以美国国家安全局网站为例:www.nsa.gov : 208.88.84.0
    命令:
    shodan search --limit 10 --fields ip_str,port net:208.88.84.0/24

二、搜索一些组织的IP:org

1.命令:shodan search --limit 10 --fields ip_str,port org:nsa

三、搜索一些网址所在组织的IP:hostname

1.命令:shodan search --limit 10 --fields ip_str,port hostname:google

四、查找一些安装了安全狗waf的网站

1.字眼:http.waf:

2.命令:shodan search --limit 10 --fields ip_str,port country:cn http.waf:safedog

五、检索一些html前端页面带有关键字的ip,用法和title类似

命令:shodan search --limit 10 --fields ip_str,port country:cn http.html:login

六、MongoDB数据库未授权登录

1.字眼:Mongodb server information - authentication,端口:27017

2.命令:shodan search --limit 10 --fields ip_str,port "Mongodb server information -authentication" port:27017

3.连接数据库

使用数据库连接工具navicat

可以对指定ip进行连接

mongodb连通性测试

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('所在目录的ip集合.txt', 'r') as file:
    ips = file.readlines()
    for ip in ips:
        ip = ip.strip()
        check_mongodb(ip)

七、Jenkins未授权访问

1.Jenkins 组件介绍

Jenkins 组件主要有以下作用:

一、⾃动化构建与部署
能⾃动从代码仓库获取代码并进⾏编译、打包等构建操作。可以把构建好的成果
⾃动部暑到不同环境中。
二、⾃动化测试
⾃动运⾏各种测试,如单元测试、集成测试等
三、任务管理

  1. 可设置定时任务,按特定时间⾃动执⾏工作。
  2. 能管理任务问的依赖关系。
  3. 监控任 务状态,失败时通知相关⼈员。

四、可扩展定制
有很多插件可满⾜不同的需求,也能⾃⾏开发插件。⾃动测试、⾃动测试、⾃动
回滚。
五、在渗透测试过程中的辅助作用
⾃动化测试:Jenkins 可以用于⾃动化渗透测试过程中的一些任务,如漏洞扫描、
安全测试等。通过编写 Jenkins 任务,可以定期对目标系统进⾏安全测试,提⾼测试
效率和覆盖范围。
持续集成与持续部署(CI/CD):在一些企业中,Jenkins 被用于 CI/CD 流程中。渗
透测试⼈员可以利用 Jenkins 的 CI/CD 流程,在开发和部署过程中进⾏安全测试,及
时发现和修复安全问题。
漏洞管理:Jenkins 可以与漏洞管理工具集成,帮助企业管理和跟踪安全漏洞。渗
透测试⼈员可以利用 Jenkins 的漏洞管理功能,了解目标系统中存在的安全漏洞,并制
定相应的攻击策略。
总之, Jenkins 在渗透测试中既可能是攻击目标,也可以作为辅助工具 。渗透测试
⼈员需要了解 Jenkins 的安全风险和漏洞,以及如何利用 Jenkins 来提⾼渗透测试的
效率和效果。同时,企业也需要加强 Jenkins 的安全配置和管理以防止被攻击者利
用)。

2.shodan搜索jenkins

1.字眼:
" X-Jenkins " OR " Set cookie:JSESSIONID ":这是搜索条件,意味着搜索结果中要么响应头包含"X-Jankins",要 么"Set-cookie" 的值包含 "JSESSIONID"。使用 OR 逻辑运算符连接了这两个条件, 扩大了搜索的范围 。http.title:"Dashboard":另一个搜索条件,表示 HTTP 响应的标题中包 含"Dashboard"这个字符串
2.命令:
shodan search --limit 10 --fields ip_str "X-Jenkins" OR "Set-cookie:JESSIONID" http.title:"Dashboard"


在网页搜索一个ip可以访问到。

Jenkins批量脚本测试

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("所在目录的ip集合.txt", "r") as file:
    ips = file.readlines()
    for ip in ips:
        ip = ip.strip()
        check_jenkins(ip)

##有关数据库的连通性测试可以仿照这个大佬写的博客,写的挺好的,可以借鉴一下。##
数据库连通性测试工具设计与实现-CSDN博客


好啦,以上就是有关本文的内容了,希望对你有所帮助咯。

相关推荐
网络安全-老纪2 分钟前
iOS应用网络安全之HTTPS
web安全·ios·https
周全全14 分钟前
Spring Boot + Vue 基于 RSA 的用户身份认证加密机制实现
java·vue.js·spring boot·安全·php
Mr.Pascal1 小时前
刚学php序列化/反序列化遇到的坑(攻防世界:Web_php_unserialize)
开发语言·安全·web安全·php
虚拟网络工程师1 小时前
【网络系统管理】Centos7——配置主从mariadb服务器案例(下半部分)
运维·服务器·网络·数据库·mariadb
风间琉璃""2 小时前
二进制与网络安全的关系
安全·机器学习·网络安全·逆向·二进制
Oak Zhang2 小时前
TheadLocal出现的内存泄漏具体泄漏的是什么?弱引用在里面有什么作用?什么情景什么问题?
java·系统安全
JosieBook2 小时前
【网络工程】查看自己电脑网络IP,检查网络是否连通
服务器·网络·tcp/ip
dot.Net安全矩阵3 小时前
.NET 通过模块和驱动收集本地EDR的工具
windows·安全·web安全·.net·交互
Che_Che_3 小时前
Cross-Inlining Binary Function Similarity Detection
人工智能·网络安全·gnn·二进制相似度检测
Hacker_Oldv3 小时前
网络安全的学习路线
学习·安全·web安全