首页 > 漏洞预警和分析 > 网奇cms文件上传getshell (限iis6.0)

网奇cms文件上传getshell (限iis6.0)

[2017.11.23]

首先从官网直接下载最新的版本,因为是.net的源码所以先用dnspy(看着有vs的感觉)直接反编译


 

 

漏洞文件:admin_UploadDataHandler.ashx

 

HttpPostedFile httpPostedFile = context.Request.Files["uploadify"];
                                                string text2 = Path.GetExtension(httpPostedFile.FileName).ToLower();

这里简单说下吧:uploadifyFILE参数,GetExtension获取文件后缀并小写

 

string[] array = new string[4];
                                                array[0] = ".gif";
                                                if (false)
                                                {
                                                        goto IL_77;
                                                }
                                                flag = ((flag2 ? 1u : 0u) + (uint)num < 0u);
                                                if (flag)
                                                {
                                                        goto IL_3C0;
                                                }
                                                array[1] = ".png";
                                                array[2] = ".jpeg";
 
                                                                array[3] = ".jpg";
                                                                array2 = array;

这里简单的说就是创建数组写入允许上传白名单后缀(也就是说限制了危险后缀0.0)

text = string.Format("{0}/{1}/", text.TrimEnd(new char[]
                                                {
                                                        '/'
                                                }), context.Request["saveFile"].Trim(new char[]
                                                {
                                                        '/'
                                                }));

从这里可以看出savefle是用于存储的文件夹,Foramt是格式化函数,这里的text是代码开头生成的日期路径(那么就是路径可控制)

httpPostedFile.SaveAs(context.Server.MapPath(text));

存储写入文件

因为后缀白名单写死了但是路径可控制所以也就是可以利用IIS解析漏洞

poc



 


enctype="multipart/form-data">






 


北京通和实益电信科学技术研究所有限公司 版权所有 京ICP备15030238号-1