求助: 灌水机发不了贴?

求助: 灌水机发不了贴?

自己想编个灌水机,可是在Discuz论坛发不了贴,出现如下错误:
您的请求来路不正确或验证字串不符,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。
求解,谢谢!

去GOOGLE上也查过了,说可能防火墙的问题,还说把COOKIE都删除
这些方法都试了,没用

出问题的代码如下:
my $pub_url = 'http://bbs.chinaunix.net/post.php?action=reply&fid=40&tid=101100&extra=&replysubmit=yes';
my $response_pub = $ua->post(
      $pub_url,
       [   'formhash'=>'bb3aa750',

          'subject'=>'54545454',

          'parseurloff'=>1,
          'smileyoff'=>1,
          'bbcodeoff'=>1,
          'isanonymous'=>1,
          'usesig'=>1,
          'emailnotify'=>1,
          'message'=>'realrealaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
          'previewbutton'=>1,
          'restoredata'=>1,
          'attach[]'=>'',
          'localid[]'=>'',
           'attachperm[]'=>0,
           'attachprice[]'=>0,
          'attachdesc[]'=>'',
           'replysubmit'=>1,
           'wysiwyg'=>1,

      ]

);


print $response_pub->content;

调程序两个方法:
本地看汇编,网络用抓包。


QUOTE:
原帖由 jigloo 于 2007-11-3 13:11 发表
调程序两个方法:
本地看汇编,网络用抓包。

太精练了吧,能详细点吗??
要详细的翻老贴,就是用个抓包软件,wireshark之类的,看浏览器发什么,你的脚本也发发什么。
顺便推荐一个Firefox的插件,Live HTTP Headers
好的,明白了,谢谢
呵呵,以前写的,你自己改吧。

### by y6cmE 2007.07.20

use LWP;
use HTTP::Cookies;
use HTTP::Request::Common qw(POST);
my $username=shift;
my $password=shift;
my $subject=shift;
my $message=shift;
if($#ARGV != 4){

    print "用法:\nwinzheng 用户名 密码 题目 内容\nby y6cmE";
    <STDIN>;
    exit;
}
my $ua=new LWP::UserAgent;
$ua->agent('Mozilla/5.0');
$ua->cookie_jar(new HTTP::Cookies);
$ua->request(POST 'http://bbs.winzheng.com/logging.php?action=login&',
[
"formhash"=>"159d2f4c",
"referer"=>"index.php",
"loginfield"=>"username",
"username"=>$username,
"password"=>$password,
"questionid"=>"0",
"answer"=>"",
"cookietime"=>"2592000",
"loginmode"=>"",
"styleid"=>"",
"loginsubmit"=>"提   交"
]
)->as_string;
my $fid2='http://bbs.winzheng.com/post.php?action=newthread&fid=2&extra=page%3D1';
my $getpost=POST($fid2);
$ua->request($getpost)->as_string;
my $posturl="http://bbs.winzheng.com/post.php?action=newthread&fid=2&extra=page%3D1&topicsubmit=yes";
$ua->request(POST $posturl,
[
"fid"=>"2",
"isblog"=>"",
"formhash"=>"903e1efb",
"typeid"=>"0",
"subject"=>"$subject",
"iconid"=>"0",
"parseurloff"=>"0",
"smileyoff"=>"0",
"bbcodeoff"=>"0",
"usesig"=>"1",
"emailnotify"=>"0",
"message"=>"$message",
"toxiaban"=>"",
"topicsubmit"=>"发新话题",
"wysiwyg"=>"1"
])->as_string;
应该是formhash的问题!
看原代码就知道了

不过此formhash并非在表单里能查看到的也不是在POST数据中查看到的formhash,真是奇怪



QUOTE:
原帖由 n3tl04d 于 2007-11-13 14:15 发表
应该是formhash的问题!
看原代码就知道了

不过此formhash并非在表单里能查看到的也不是在POST数据中查看到的formhash,真是奇怪

那该如何取得?
搞灌水机干嘛
我抓包得到的formhash和看网页源码的formhash都是7dda8844