{"id":13845872,"url":"https://github.com/s7ckTeam/Glass","last_synced_at":"2025-07-12T03:32:59.319Z","repository":{"id":42157873,"uuid":"327273415","full_name":"s7ckTeam/Glass","owner":"s7ckTeam","description":"Glass是一款针对资产列表的快速指纹识别工具，通过调用Fofa/ZoomEye/Shodan/360等api接口快速查询资产信息并识别重点资产的指纹，也可针对IP/IP段或资产列表进行快速的指纹识别。","archived":false,"fork":false,"pushed_at":"2022-01-26T10:10:38.000Z","size":14661,"stargazers_count":960,"open_issues_count":15,"forks_count":113,"subscribers_count":15,"default_branch":"main","last_synced_at":"2024-08-05T17:45:14.351Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/s7ckTeam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-06T10:14:30.000Z","updated_at":"2024-08-02T10:21:38.000Z","dependencies_parsed_at":"2022-07-16T02:00:46.173Z","dependency_job_id":null,"html_url":"https://github.com/s7ckTeam/Glass","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s7ckTeam%2FGlass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s7ckTeam%2FGlass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s7ckTeam%2FGlass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s7ckTeam%2FGlass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s7ckTeam","download_url":"https://codeload.github.com/s7ckTeam/Glass/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225791447,"owners_count":17524787,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T17:03:39.080Z","updated_at":"2024-11-21T19:30:52.614Z","avatar_url":"https://github.com/s7ckTeam.png","language":"Python","funding_links":[],"categories":["扫描器、资产收集、子域名","Python"],"sub_categories":["网络服务_其他"],"readme":"# Glass(镜) V2.0-剑客到刺客的蜕变\n\n## 一、简介：\n\n```\n    _____    _      _____                    \n __|___  |__| | __ |_   _|__  __ _ _ __ ___  \n/ __| / / __| |/ /   | |/ _ \\/ _` | '_ ` _ \\ \n\\__ \\/ / (__|   \u003c    | |  __/ (_| | | | | | |\n|___/_/ \\___|_|\\_\\   |_|\\___|\\__,_|_| |_| |_|\n  ____ _               \n / ___| | __ _ ___ ___ \n| |  _| |/ _` / __/ __|\n| |_| | | (_| \\__ \\__ \\\n \\____|_|\\__,_|___/___/ \thttp://www.s7ck.com    \n```\n\n\nGlass为s7ck Team 红队武器库F-Box里的一款信息收集工具。\n\n在红队作战中，信息收集是必不可少的环节，如何才能从大量的资产中提取有用的系统(如OA、VPN、路由、Weblogic...)是众多红队人员头疼的问题。\n\nGlass是一款针对资产列表的快速指纹识别工具，通过调用Fofa/ZoomEye/Shodan/360等api接口快速查询资产信息并识别重点资产的指纹，也可针对IP/IP段或资产列表进行快速的指纹识别。\n\nGlass旨在帮助红队人员在资产信息收集期间能够快速从C段、大量杂乱的资产中精准识别到易被攻击的系统，从而实施进一步测试攻击。\n\n s7ck Team F-box旨在通过开源或者开放的方式，长期维护并推进涉及安全研究各个领域不同环节的工具化，高度自动化，将立足于不同安全领域、不同安全环节的研究人员和工具链接/封装/优化起来。\n \n 主要目的是改善安全圈内工具庞杂、水平层次不齐、开源无人维护、工具找不到的等多种问题，营造一个更好更开放的安全工具促进与交流的技术氛围。\n\n### 开发语言\n\n* Python3\n\n### 运行环境\n\n* Linux\n* Windows\n* Mac\n\n### 使用依赖库\n\n* requests\n* colorama\n* prettytable\n* xlsxwriter\n\n\n### 安装\n\tgit clone https://github.com/s7ckTeam/Glass\n\tcd Glass\n\tpip3 install -r requirements.txt\n\n## 二、更新日志：\n\n### 正式版\n* 2.0.7 添加360（Quake）搜索引擎（`https://quake.360.cn/quake/welcome`），取消默认搜索，必须指定搜索参数`-s`[eye（钟馗之眼）、fofa（Fofa）、qk（Quake）]，修复每日一说\n* 2.0.6 更改默认搜索设置，添加哪个`api`就会默认调用哪个，不需要指定，如果有多个`api`可`-s`指定\n* 2.0.5 添加自定义搜索（-s,--search）\n  1. 添加钟馗之眼（`https://www.zoomeye.org/`）搜索\n  2. 在`config/config.py`中`zoomeyeApi`设置，输入`key`值即可（**注：** 用的时候注意api使用条数）\n  3. -s参数[eye（钟馗之眼） or fofa（Fofa）]（python3 Glass.py -i 127.0.0.1 -s eye or fofa）\n  4. 不加参数`-s`默认使用`fofa`搜索\n\n* 2.0.4 添加删除更新的缓存文件\n* 2.0.3 扫描域名或批量扫描时可不加协议（**注：** 建议添加协议）\n* 2.0.2 增加自定义输出格式（-o,--output）\n  1. 支持输出的格式有：`txt`、`json`、`html`、`xls`、`csv`\n  2. 默认输出`txt`格式\n  3. 输出目录在根目录`output`下\n* 2.0\n  1. 增加代理功能（--proxy）\n     - 全局访问代理，支持http、https\n     - 支持自定义（格式：`http://127.0.0.1:8080`或者`https://127.0.0.1:8080`）\n     - 首次使用会按照参数获取相应代理，然后在根目录生成`/proxyFile/proxy.txt`\n     - 参数（all）使用全部代理进行随机分配\n     - 参数（cn）使用国内代理进行随机分配\n     - 参数（`http://127.0.0.1:8080`或者`https://127.0.0.1:8080`） 自定义的代理\n  2. 增加获取代理功能（--proxy-list）\n     - 首次使用会按照参数获取相应代理，然后在根目录生成`/proxyFile/proxy.txt`\n     - 参数（all）获取全部\n     - 参数（cn）获取国内\n  3. 增加在线更新功能（--update）\n  4. 去除print，改用logging输出\n  5. 优化运行代码，后期还会优化\n  6. 增加对url协议使用相应协议的代理\n  7. 增加查看版本参数（-v,--version）\n  8. 使用不生成pyc文件\n  9. 全局随机分配代理，获取到多少就用多少，每次访问都不一样\n  10. 将获取到的代理文件保存，根目录生成`/proxyFile/proxy.txt`，终端以表格形式输出，一目了然\n  11. 增加版本判断，建议使用 \u003e=python 3.7.3\n  12. 对证书认证方面的处理\n  13. 每过15分钟会重新获取一次代理IP\n* 1.3（添加`cookie`识别方式，将识别规则改为列表，防止重复的cms不带入识别，识别精准度提高，速度更快）\n* 1.2（修复编码问题，以及fofa会员获取数量问题，现在默认`100`，在`config/config.py`中`fofaSize`更改，普通会员为`100`，高级`10000`，企业`100000`，请自行更改）\n* 1.1（处理每日一说超时后写入空文件问题）\n* 1.0（全面优化识别效率，命中率`99%`）\n* 0.9（添加每日一说获取异常，添加识别规则）\n\n### Glass V2.0新版内容部分截图\n\n![](./Image/proxy_1.png)\n\n![](./Image/proxy_2.png)\n\n![](./Image/Glass_pa3.png)\n\n### 测试版更新信息\n\n  - 0.9（优化IP段的扫描，以及批量下可添加IP段）\n  - 0.8（更改线程运行方式）\n  - 0.7（与协程对比，最好还是用线程并发）\n  - 0.6（更改配色方案，采用线程并发，增加单url以及批量url识别）\n  - 0.5（优化采集速度以及与识别分开，增加输出）\n  - 0.4（整理识别规则）\n  - 0.3（添加指纹扫描）\n  - 0.2（更新每天一说，让红队不再乏味）\n  - 0.1（写出整体实现功能，Fofa接口的设置与采集）\n\n## 三、使用方法：\n\n```\nUsage: python3 Glass.py -i 127.0.0.1 or 127.0.0.0/24\nUsage: python3 Glass.py -i 127.0.0.1 -s eye or fofa\nUsage: python3 Glass.py -f ips.txt\nUsage: python3 Glass.py -u https://96.mk/\nUsage: python3 Glass.py -w webs.txt\nUsage: python3 Glass.py --proxy-list all or cn\nUsage: python3 Glass.py (-i -f -u -w) 127.0.0.1 or 127.0.0.0/24 --proxy all or cn\nUsage: python3 Glass.py --update\nUsage: python3 Glass.py -u https://96.mk/ -o html\n\n\nusage: Glass.py [-h] [-i IP] [-f FILE] [-u URL] [-w WEB] [--proxy PROXY] [--proxy-list PROXYLIST] [-v] [--update] [-o OUTPUTTARGET] [-s SEARCH]\n\nGlass scan.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -i IP, --ip IP        Input your ip.\n  -f FILE, --file FILE  Input your ips.txt.\n  -u URL, --url URL     Input your url.\n  -w WEB, --web WEB     Input your webs.txt.\n  --proxy PROXY         Input your proxy options(all or cn) or proxy address(127.0.0.1:8080).\n  --proxy-list PROXYLIST\n                        List the proxys.\n  -v, --version         Show program's version number and exit.\n  --update              Update the program.\n  -o OUTPUTTARGET, --output OUTPUTTARGET\n                        Select the output format.\n  -s SEARCH, --search SEARCH\n                        Choose your search engine.\n\n\n-i 可指定单独IP或者IP段（需添加您fofa的API或者zoomeye的API）\n-f 批量要扫的IP或IP段（需添加您fofa的API或者zoomeye的API）\n-u 单个url识别\n-w 批量url识别\n-s 指定搜索引擎\n--proxy all/cn/ `http://127.0.0.1:8080` 使用 all表示全部 cn表示国内或者自定义的代理（支持http、https）\n--proxy-list all/cn 获取代理 all表示全部 cn表示国内\n```\n#### 相关配置更改\n\n* API设置\n  1. 在`config/config.py`中`fofaApi`设置，输入对应的`email`与`key`即可\n  2. 在`config/config.py`中`zoomeyeApi`设置，输入`key`值即可\n* 线程默认 `100`可在`config/config.py`中`threadNum`修改线程数 **（注：建议在200以内）**\n* 每日一说可设置开启关闭，在`config/config.py`中`tosayRun`，`True`为开，`False`为关\n* fofa会员搜索的更改，默认搜索`100`，在`config/config.py`中`fofaSize`更改，普通会员为`100`，高级`10000`，企业`100000`，请自行更改\n\n\nGlass提供了**四种**指纹识别方式，可从本地读取识别，也可以从FOFA进行批量调用API识别(需要FOFA密钥)。\n\n**1.本地识别：**\n\n```bash\npython Glass.py -u http://www.s7ck.com  // 单url测试\npython Glass.py -w url.txt  // url文件内\n\n```\n\n**2.FOFA识别：**\n\n注意：从FOFA识别需要配置FOFA 密钥以及邮箱，在`.../config/config.py`内配置好密钥以及邮箱即可使用。\n\n```bash\nfofaApi = {\n    \"email\": \"admin@s7ck.com\",\n    \"key\": \"1234567890\",\n}\n```\n\n```\npython3 Glass.py -i 127.0.0.1  //支持单IP资产\npython3 Glass.py -i 127.0.0.1/24 //支持IP段资产\npython3 Glass.py -f ips.txt //支持文本内IP资产，可添加IP段\n```\n\n#### 结果输出\n\n结果输出在`../output/xxxxx.txt`\n\n#### 识别规则添加方法\n\n目前只加了对源码和`header`头文件进行识别，后面会陆续添加识别的规则以及方式\n\n已加入`cookie`识别\n\n规则文件在`config/rules.py`\n\n**添加方法**\n\n```\n['CMS', 'headers', '(nginx)']\n['CMS', 'cookie', '(MorkerSession)']\n['CMS', 'code', '(\u003ctitle\u003eMorker\u003c/title\u003e)']\n\n三种识别方式，headers头文件识别，cookie识别，code源码识别\n\n支持同方式多种识别内容，比如：\n\n['CMS', 'code', '(\u003ctitle\u003eMorker\u003c/title\u003e)|css/css.css']\n\n注：单引号和反斜杆记得转义，转义符号为\\\n```\n\n## 四、效果：\n\n**1.本地识别：**\n![](./Image/u1.png)\n![](./Image/u2.png)\n\n**2.fofa识别：**\n\n![](./Image/c0.png)\n![](./Image/c1.png)\n![](./Image/c2.png)\n![](./Image/Glass.gif)\n\n## 五、特别感谢\n* s7ck Team\n*  Morker\n* XBJ\n* d0gamn\n\n**特别感谢EHole(棱洞) 运行思路**\n\n## 六、文末\nGithub项目地址（BUG、需求、规则欢迎提交）: https://github.com/s7ckTeam/Glass\n\n![](./Image/s7ck.png)\n\n\n# 404StarLink 2.0 - Galaxy\n![](https://github.com/knownsec/404StarLink-Project/raw/master/logo.png)\n\nGlass 是 404Team [星链计划2.0](https://github.com/knownsec/404StarLink2.0-Galaxy)中的一环，如果对Glass 有任何疑问又或是想要找小伙伴交流，可以参考星链计划的加群方式。\n\n- [https://github.com/knownsec/404StarLink2.0-Galaxy#community](https://github.com/knownsec/404StarLink2.0-Galaxy#community)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs7ckTeam%2FGlass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs7ckTeam%2FGlass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs7ckTeam%2FGlass/lists"}