Heim >Backend-Entwicklung >PHP-Tutorial > 小弟我的网站是不是被恶意入侵了

小弟我的网站是不是被恶意入侵了

WBOY
WBOYOriginal
2016-06-13 13:29:22823Durchsuche

我的网站是不是被恶意入侵了
我的是php写的,服务器是justhost上申请的。
今天查看后台发现admin有被别人在凌晨用的痕迹,但那个时间我没上网,而且那个进入我admin的人IP是在中东,我后台有自动记录ip。
后来查看justhost日志和最近访客,发现这个IP访问了很多类似这种的页面:

/au/shop.php?dest_id=3&shop_id=999999.9+union+all+select+%28select+concat%280x7e%2C0x27%2CCART.username%2C0x27%2C0x7e%29+from+%60whimwin1_DB%60.CART+Order+by+ip_address+limit+40%2C1%29+--

正常人访问的页面应该是/au/shop.php?dest_id=3 之类的,这么长的访问地址是不是恶意试探的?而且在1分钟之内访问了很多类似的地址,是不是用黑客软件在自动探测????

但是我又感觉不像,这地址里面包括了我数据库名字和一些表,这些是怎么出来的???

愁死我了。。。


------解决方案--------------------

探讨

引用:

应该是在找你SQL的注入点.可能已经找到了一些漏洞,他知道你数据库名和一些表 这个可能有危险,当然他也可能是注入了别人然后再得到你这边的数据,不过还是假设你有没有过滤好的地方吧

检查一下自己的代码将关键的部分都仔细的做个安全过滤。没事,只要你不是明文保存密码,问题不大。
互联网上闲得蛋痛的人太多了


那关于过滤 我只知道一个过滤特殊字符的 有没有相……

------解决方案--------------------
3&shop_id=999999.9 union all select (select concat(0x7e,0x27,CART.username,0x27,0x7e) from `whimwin1_DB`.CART Order by ip_address limit 40,1) --

我们来分析一下,你原本将3和shop_id插入到sql语句中执行查询,结果人家在shop_id=99999.9之后加入了后边的union语句,结果就是你的sql语句是原本的:

select * from xxx where id=3 and shop_id 9999.9 变成了:

select * from xxx where id=3 and shop_id 9999.9 union all select (select concat(0x7e,0x27,CART.username,0x27,0x7e) from `whimwin1_DB`.CART Order by ip_address limit 40,1) --

后面的--是为了注释掉你原本sql语句where子句后面可能还存在的其他例如orderby子句。

后边查询的东西不知道whimwin1_DB是什么了。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn