欢迎使用CSDN-markdown编辑器

来源:互联网 发布:新手海报设计软件 编辑:程序博客网 时间:2024/06/06 14:12

id=1[id” = “” ] && echo 必须传入有效id && exit -1
proxy=2[proxy” = “” ] && echo 必须传入有效代理 && exit -2
target=3[target” = “” ] && echo 必须传入有效目标位置 && exit -3

cd dirname "$0"

uaCount=267
detailLog=$target/detail.log

取UA

useragent=sed -n "$(($RANDOM%$uaCount+1))p" resource/useragents

echo useragent=useragent>>detailLog

清理现场

rm -rf target/js1target/js2

第一次发起请求,获取js

code=$?
for i in seq seq 1 10
do
echo 第iid >> $detailLog 2>&1
js1=curl -s -m 2 -x $proxy http://url -c $target/cookie.txt | grep eval | awk -Feval '{print $2}' >> detailLog 2>&1  
  [ “
js1" = "" ] && echo id>>detailLog 2>&1 && continue;
#[[ ! “js1" =~ "eval" ]] && echoid第一次请求结果不对,重新请求! >> detailLog 2>&1 && continue;  
  #结果有效  
  echo a=
{js1//\\/\\\\} > target/js1break;done[!ftarget/js1 ] && echo 第一次请求出错! && exit $code
js2=java -cp classes JavaScriptRunner $target/js1 a

echo $js2

js2=js2/hashundefined/hashjs2={js2/if(findDimensions())/if(false)}
js2=js2/document.cookie/wzwstemplatejs2={js2//; path=\//}
js2=js2/document.cookie/wzwschallengeechowindow=;js2" > $target/js2

执行js并获取cookie

eval (javacpclassesJavaScriptRunnertarget/js2 wzwstemplate wzwschallenge | awk -F’\|\|\|’ ‘{print “wzwstemplate=\”“1"\";","wzwschallenge=\""2”\”;”}’)
wzwsconfirm=cat $target/cookie.txt | grep wzwsconfirm | awk '{print $7}'

第二次发起请求,获取ccpassport和wzwschallenge,也是作为cookie一部分

curl -s -m 2 -x proxyHReferer:http://urlH"UserAgent:useragent” -b “wzwsconfirm=wzwsconfirm;wzwstemplate; wzwschallenge;"ctarget/cookie.txt http://url >/dev/null 2>&1
code=?[!code" = "0" ] && echo 请求ccpassport出错! && exit $code

ccpassport=cat $target/cookie.txt | grep ccpassport | awk '{print $7}'
wzwschallenge=cat $target/cookie.txt | grep wzwschallenge | awk '{print $7}'
[ “ccpassport” = “” ] && echo 获取到ccpassport为空! && exit -3  
echo ccpassport=
ccpassport,wzwschallenge=wzwschallenge,wzwsconfirm=wzwsconfirm,wzwstemplate=wzwstemplate>>detailLog 2>&1

获取route

curl -s -m 2 -x proxyHReferer:http://urlH"UserAgent:useragent” -b “wzwsconfirm=wzwsconfirm;wzwstemplate; wzwschallenge;ccpassport=ccpassport” -c $target/cookie.txt http://url >/dev/null 2>&1
code=?[!code" = "0" ] && echo 请求route出错! && exit $code
route=cat $target/cookie.txt | grep route | awk '{print $7}'
echo ccpassport=ccpassport,wzwschallenge=wzwschallenge,wzwsconfirm=wzwsconfirm,wzwstemplate=wzwstemplate,route=route>>detailLog 2>&1

获取验证码

curl -s -m 2 -x proxyHReferer:http://urlH"UserAgent:useragent” -b “wzwsconfirm=wzwsconfirm;wzwstemplate; wzwschallenge;ccpassport=ccpassport; route=route"ctarget/cookie.txt http://urlsecurity/jcaptcha.jpg?((RANDOM%100)) > target/vcode.pngcode=?
[ ! “code" = "0" ] && echo 请求验证码出错! && exitcode
vcode=java -cp classes vcode $target/vcode.png 5 | grep result | awk '{print $3}' | awk -F\" '{print $2}'
[ “$ccpassport” = “” ] && echo 验证码识别为空! && exit -3

JSESSIONID=cat $target/cookie.txt | grep JSESSIONID | awk '{print $7}'
echo 验证码:vcodesessionId:JSESSIONID

post验证码校验

curl -s -m 2 -x proxyHReferer:http://urlH"UserAgent:useragent” -b “wzwsconfirm=wzwsconfirm;wzwstemplate; wzwschallenge;ccpassport=ccpassport; route=route;JSESSIONID=JSESSIONID” -d “j_captcha=$vcode” http://urllogin.do | grep success > /dev/null 2>&1
code=?[!code" = "0" ] && echo 验证码验证失败! && exit $code

执行查询

content=curl -s -m 2 -x $proxy -H 'Referer: http://url' -H "User-Agent:$useragent" -b "wzwsconfirm=$wzwsconfirm; $wzwstemplate; $wzwschallenge; ccpassport=$ccpassport; route=$route; JSESSIONID=$JSESSIONID" -d "searchCourtName=%E5%85%A8%E5%9B%BD%E6%B3%95%E9%99%A2%EF%BC%88%E5%8C%85%E5%90%AB%E5%9C%B0%E6%96%B9%E5%90%84%E7%BA%A7%E6%B3%95%E9%99%A2%EF%BC%89&selectCourtId=1&selectCourtArrange=1&pname=$id&cardNum=&j_captcha=$vcode" http://urlnewsearch
code=?[!code" = "0" ] && echo 请求结果出错!&& echo content  && exitcode
echo $content > content
pageCount=echo $content | awk -F'页 1/' '{print $2}' | awk '{print $1}'
[ “pageCount" = "1" ] && echo 只有一页,不需要翻页 && echocontent && exit 0
echo 总共有${pageCount}页,需要分页处理
for no in seq 1 $pageCount
do
content=curl -s -m 2 -x $proxy -H 'Referer: http://url' -H "User-Agent:$useragent" -b "wzwsconfirm=$wzwsconfirm; $wzwstemplate; $wzwschallenge; ccpassport=$ccpassport; route=$route; JSESSIONID=$JSESSIONID" -d "currentPage=$no&selectCourtId=1&selectCourtArrange=1&pname=$id&cardNum=" http://urlnewsearch
code=?[!code" = "0" ] && echo 请求结果出错!&& echo content  && continue  
  echo
content >> content
done

echo content | grep '<td' | grep 'id=' | awk '{print4}’

exit 0

0 0
原创粉丝点击