ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

sqlmap(印尼语版 README 导读):自动检测与利用 SQL 注入漏洞的开源渗透测试工具

sqlmap(印尼语版 README 导读):自动检测与利用 SQL 注入漏洞的开源渗透测试工具 sqlmap印尼语版 README 导读自动检测与利用 SQL 注入漏洞的开源渗透测试工具【免费下载链接】sqlmapAutomatic SQL injection and database takeover tool项目地址: https://gitcode.com/gh_mirrors/sq/sqlmap导读本文基于 sqlmap 官方 README 的印尼语翻译版doc/translations/README-id-ID.md展开系统梳理 sqlmap 的项目定位、核心能力、安装方式与基础用法并结合当前仓库源码逐层印证其底层实现。读完本文你将掌握 sqlmap 的完整获取与安装流程、-h/-hh两级命令行帮助体系以及其检测 → 利用 → 数据库接管三大核心能力在源码中的落点能够快速上手并深入理解其工作原理。项目简介自动化的 SQL 注入检测与数据库接管工具印尼语版 README 对 sqlmap 的定义是sqlmap adalah perangkat lunak sumber terbuka yang digunakan untuk melakukan uji penetrasi, mengotomasi proses deteksi, eksploitasi kelemahan SQL injection serta pengambil-alihan server basis data——即 sqlmap 是一款开源渗透测试软件用于自动化完成 SQL 注入漏洞的检测、利用以及数据库服务器的接管takeover。这份印尼语翻译文档是项目主 README.md 的官方多语言版本之一两者在结构与内容上完全对应。仓库根目录下的多语言翻译doc/translations/覆盖阿拉伯语、孟加拉语、保加利亚语、中文、克罗地亚语、荷兰语、法语、格鲁吉亚语、德语、希腊语、印地语、意大利语、日语、韩语、库尔德语、波斯语、波兰语、葡萄牙语、俄语、塞尔维亚语、斯洛伐克语、西班牙语、土耳其语、乌克兰语、越南语等印尼语版README-id-ID.md即是其中之一。从仓库结构看sqlmap 的能力远不止发一个注入请求这么简单其架构可以印证 README 中描述的三大核心能力README 声称的能力仓库实现证据先进的检测引擎pendeteksi canggihlib/controller/checks.py 中的checkSqlInjection()、heuristicCheckSqlInjection()、checkWaf()等检测函数多种注入技术lib/techniques/ 目录下的blind/布尔盲注与时间盲注、error/报错注入、union/联合查询注入、dns/DNS 外带注入等模块接管数据库服务器lib/takeover/ 目录下的udf.py、xp_cmdshell.py、metasploit.py、web.py等后渗透模块具体而言checkSqlInjection()会根据参数值类型数字、纯字母或混合动态选择不同的边界boundary组合再依序执行排序后的注入测试载荷tests而heuristicCheckSqlInjection()会在正式注入测试前向参数注入一段含引号的随机字符串通过观察响应页面是否出现数据库报错wasLastResponseDBMSError()来快速判断参数是否可能为注入点。这就是 README 所称先进检测引擎的源码级落地。安装下载发行包或克隆 Git 仓库印尼语版 README 提供了两种获取方式方式一直接下载发行包。从项目发布页下载最新版本的 tarball.tar.gz或 zipball.zip压缩包解压后即可使用。方式二通过 Git 克隆仓库README 原文给出的命令git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev使用--depth 1进行浅克隆shallow clone只拉取最新一次提交可显著减少下载体积适合希望快速拿到最新版本的用户。运行环境要求README 明确说明 sqlmap 开箱即用berfungsi langsung支持Python 2.7与3.x任意平台版本。当前仓库的入口脚本 sqlmap.py 也印证了这一点脚本首部即通过from __future__ import print_function兼容 Python 2/3并最先导入lib.utils.versioncheck做版本与依赖自检——若模块缺失会直接输出[!] wrong installation detected (missing modules)并退出这正是下载即用体验的保障。仓库本身是绿色免安装形态克隆或解压后无需编译直接以python sqlmap.py方式调用即可。基础用法从 -h 到 -hh 的两级帮助体系README 的Penggunaan用法部分给出了两个入门命令python sqlmap.py -h-h输出基础选项列表覆盖最常用的目标指定、请求、枚举等参数。python sqlmap.py -hh-hh则输出全部选项与开关包括进阶开关供深度使用者查阅完整参数体系。从 sqlmap.py 的启动流程看命令行参数由cmdlineOptions.update(args.__dict__)收集后交给lib/parse/cmdline.py解析并最终与默认配置合并。除了命令行sqlmap 还提供等价的全量配置文件 sqlmap.conf其中以[Target]、[Request]、[Detection]、[Techniques]、[Enumeration]等小节组织各类参数。例如[Target]小节定义了六种目标来源配置项作用示例/说明url指定目标 URLhttp://192.168.1.121/sqlmap/mysql/get_int.php?id1cat2direct直接连接数据库mysql://USER:PASSWORDDBMS_IP:DBMS_PORT/DATABASE_NAME、oracle://...logFile从 Burp / WebScarab 代理日志解析目标Burp 请求日志文件路径或 WebScarab conversations 目录bulkFile批量扫描文本文件中的多个目标每行一个目标 URLrequestFile从文件加载完整 HTTP 请求含 POST 方法与请求体的原始请求文本googleDork用 Google dork 表达式让搜索引擎返回目标主机如ext:php inurl:id这些配置项与命令行开关一一对应如-u/--url、-d/--direct、-l/--log-file、-m/--bulk-file、-r/--request-file、-g/--google-dork因此-h与-hh展示的正是同一套参数体系的不同信息密度。核心能力速览与仓库佐证README 强调 sqlmap 面向终极渗透测试者ultimate penetration tester提供多种细分功能banyak fitur niche包括数据库指纹识别database fingerprinting识别目标使用的 DBMS 类型。仓库 plugins/dbms/ 目录下按数据库厂商组织了完整插件覆盖 MySQL、Oracle、PostgreSQL、MSSQL Server、SQLite、Access、DB2、Firebird、H2、HSQLDB、ClickHouse、Snowflake、Vertica 等三十余种数据库每个插件均包含connector.py连接器、fingerprint.py指纹识别、enumeration.py枚举、syntax.py语法、filesystem.py文件系统、takeover.py接管等模块构成完整的检测—枚举—提权链路。从数据库提取数据data fetching from the database即表、列、数据的枚举与导出由 lib/controller/action.py 根据命令行选项调度对应枚举流程。访问底层文件系统accessing the underlying file system在部分数据库如 MySQL 的LOAD_FILE/INTO OUTFILE、MSSQL 的xp_cmdshell支持下读写目标主机文件相关 SQL 脚本可见于 data/procs/如 data/procs/mysql/write_file_limit.sql、data/procs/mssqlserver/enable_xp_cmdshell_2000.sql。通过 out-of-band 连接执行操作系统命令executing commands on the operating system via out-of-band connections在无法直接回显的场景下借助 DNS 请求等方式外带数据。仓库在 data/procs/ 下按 DBMS 提供了统一的dns_request.sql覆盖 MySQL、Oracle、PostgreSQL、MSSQL、H2、ClickHouse 等配合 lib/request/dns.py 与 lib/techniques/dns/ 实现基于 DNS 的带外数据通道lib/takeover/ 则集中了 UDF 提权、xp_cmdshell启用、Metasploit 会话注入等接管手段。从源码结构可以推断上述能力统一由 lib/controller/controller.py 的start()函数编排先做连通性与 WAF 检测checkWaf()再进行启发式与精确注入检测heuristicCheckSqlInjection()→checkSqlInjection()筛选出可用的注入向量后再根据用户选项进入枚举、文件读写或数据库接管阶段。这条调用链正是自动检测与利用的完整闭环。深入理解从入门命令到自定义 tamper 脚本示例运行sample runREADME 提到可以在线查看一次完整运行示例asciinema 录屏直观了解工具从检测到利用的交互式输出。本地运行时同样的日志与结果会写入output/目标主机/目录包括 session 文件与结果文件。进阶阅读README 建议阅读完整的用户手册users manual以获取全部选项、开关的说明与示例。仓库内还提供 doc/ARCHITECTURE.md 供希望理解内部架构的读者参考。自定义能力入口若想对载荷做进一步变形tamper/ 目录提供了上百个现成脚本如space2comment.py、randomcase.py、base64encode.py、between.py等可配合--tamper参数用于绕过 WAF/IDS 过滤这也是 README 所述检测引擎强大、功能丰富的延伸体现。快速上手清单获取git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev或下载发行包确认环境本机具备 Python 2.7 或 3.x查看帮助python sqlmap.py -h基础与python sqlmap.py -hh全部选项指定目标命令行-u URL或参考 sqlmap.conf 的[Target]小节配置其他目标来源-d、-l、-m、-r、-g按需选择检测与利用深度指纹识别、数据枚举、文件系统读写、数据库接管对应源码落点见 plugins/dbms/、lib/controller/、lib/takeover/进阶结合 tamper/ 脚本自定义载荷变形配合 WAF 绕过场景使用。说明本文所述命令与能力均以当前仓库sqlmap 主线版本实际内容为准sqlmap 仅应用于已获授权的渗透测试与安全研究场景。【免费下载链接】sqlmapAutomatic SQL injection and database takeover tool项目地址: https://gitcode.com/gh_mirrors/sq/sqlmap创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表