1.
会调用write_memberslog这个函数。
然后重点看这个变量$jobs['jobs_name']
从上面我们可以得知
$jobs=get_jobs_one($jobid,$uid);
然后再继续看下去
直接进行调用,没有处理。
So
我们可以这样,
新建一个职位,名称为
然后去为其消费,让其创建记录。置顶,变色,紧急,推荐都行。
然后在积分消费明细中可以看到
经过上面,我们可以得知,经过函数get_jobs_one
返回的值没有就行处理。
然后可以搜索下喊函数,看看在什么地方调用了,而且进入了数据库。
2.
下面继续看了一下申请职位名称这。
这一处,在 个人简历名称 职位名称 企业名称 三处都没有进行过滤,
随后我们可以去查看一下源码。
我们可以找出 上面这三处 数据 是怎么获取的,然后尝试是否可以扩大战果。
$jobsarr=app_get_jobs($jobsid);
foreach($jobsarr as $jobs){
$addarr['company_name']=$jobs['companyname'];
$addarr['jobs_name']=$jobs['jobs_name'];
}
简历信息在这
$resume_basic=get_resume_basic($_SESSION['uid'],$resumeid);
3.
在邀请面试的地方
同样发现了二次注入。
这个构造一下吧 。
把企业名称修改成这样
随后我们可以见下图
4.
经过测试,又发现,收藏职位处也可二次注入,
m'为企业名称
5.
发现一个有问题的函数
获取企业资料不检测直接返回,随后找了这个函数进行了调用,然后执行了数据操作。
然后再挖掘这个函数的
下载记录。