88888 发表于 2012-4-23 14:49

有关上海签证预约的一些技术信息供大家参考!

本帖最后由 88888 于 2012-4-23 17:44 编辑

为了方便大家看,本文重点讲述了
1)预约漏洞(漏洞一,已经在4月23日10点改正了一部分,不过,还是有漏洞,请看3)
2)针对收到确认的邮件显示出现“${field.get("xxx")}”的说明
3)认识链接。预约任何时间以及改变签证类型(团聚结婚,留学互惠,商务,团体)的方法(***)

1)预约漏洞
其实,大使馆的预约服务的确存在漏洞。不过,那个漏洞并不是我们这里的用链接去预约。因为用链接去预约就是预约本身的一部份。当你点击某个时间段(假如时间段有空位),你的浏览器替你“输入了”那个链接。如果你不相信,可以有两个方法证明。第一,你可以看一下你的预约页面的地址,这个地址和我们贴出的预约链接有类似的结构,唯一不同的,是某些具体和预约种类(categoryId=xxx)以及时间(dateStr=xx.xx.xxxx&openingPeriodId=xxxx)地点(locationCode=xxx)相关的项目可能不同。第二个证明方法,如果你用的是windows的电脑,你可以去微软网站下载“Microsoft Network Monitor”,运行后,你会发现,只有当你的浏览器进入最后的那个页面,你才会收到用MD5加密的session号(JSESSIONID=),而这个号就是你这个记录的正式开始。

好了,说预约漏洞。有两个预约漏洞:

第一个漏洞,服务器允许没有开放的时间段被预约。这个很容易证明,因为我们周三4.18才开始意识到预约的麻烦,然后发现了漏洞,并且成功的预约了7月16日的时间。但是周四下午,约7月16日就开逐渐变难了,但是,约12月的还是没有任何问题。今天又测试了,发现10点以后,这个漏洞有所修改。即,不能用categoryId=183预约没有开放的时间段了。不过,还是有办法,就是需要其他的途径(见本文3)。

第二,服务器没有清除数据,即,服务器没有在开放当天可以预约的时间段前(比如前一分,或者前一秒),清除数据库里面和这个时间段有关的预约。这样,因为有“漏洞一”造成的预约已经被占用完,导致,一开放,就没有空位了。(不知道这个漏洞是不是也修改了,需要今晚验证)

其实,这两个漏洞都不是程序设计本身的漏洞,因为,也许大使馆就希望可以在开放前就可以内部提前预约(这个是典型的中国式的预约需求,政府总是要求有些特权的,不是吗?)

所以,现在被容易的发现了,只会让以后这样的“特权漏洞”更加隐蔽。

2)针对收到确认的邮件显示出现“${field.get("xxx")}”的说明

有关收到确认邮件的显示出现“${field.get("xxx")}”字样的错误,以及出现,无法取消预约的情况。

之所以产生这样的错误,原因在于错误的使用了链接的categoryId (预约种类)。因为我们自己发现预约特权漏洞的时候,用的都是程序预约。所以,没有出现收到的邮件有“${field.get("xxx")}”。但是,如果你使用浏览器输入链接,请注意categoryId和openingPeriodId之间的配合。因为上海有5种预约方式,对应categoryId是183-187。(具体的见下表)

假如你输入的链接是(想预约周三申根签证_探亲访友类, 07:45-08:00,比如7月4号)
https:// service2.diplo.de/rktermin/extern/appointment_showForm.do?locationCode=shan&realmId=96&categoryId=183&dateStr=04.07.2012&openingPeriodId=4284

(如果你复制链接,请删除https://和service2之间的空格)

如果有空位,你就会收到一封确认信,但是信里面有${field.get("535")}到${field.get("541")}的错误。其实,这个只是邮件显示的错误,因为你用了原本是“申根签证_商务类”的时间段,预约“探亲访友类”了。不过,你的信息其实是被正确记录的。如何证明?你可以用那个护照号再约,如果有空,你就会收到护照号重复的错误。

你也可以从确认信里面的链接退约,那个护照号就可以再次被利用。

如果你不幸约了团体签的时间段,比如周三的3937,3938,4260,4261,这四个号。那么这样的预约是不能被取消的。所以,如果这样,你只能放弃。占预约的时候,不填真实的护照号是非常有必要的!!!!

一般,确认信里面出现${field.get("549")}--${field.get("556")},就是团签,这样的预约是没有办法通过确认信里面的链接取消的,只能给大使馆邮件,把退约链接发给他们,让他们帮助取消。

3)认识链接。预约任何时间以及改变签证类型(团聚结婚,留学互惠,商务,团体)的方法:

链接模板:

https:// service2.diplo.de/rktermin/extern/appointment_showForm.do?locationCode=shan&realmId=96&categoryId=AAA&dateStr=dd.mm.yyyy&openingPeriodId=BBBB
(如果你复制链接,请删除https://和service2之间的空格,并且,合理填写AAA,BBBB以及dd.mm.yyyy)

其中AAA为签证类型,BBBB为时间段。dd.mm.yyyy是预约日期。
签证类型见下表,签证时间段和日期的规则见“关于德国的签证预约任何一天的方法(更新)”
http://www.dolc.de/forum.php?mod=viewthread&tid=1469578

categoryId类型        签证类型                        categoryId不匹配,收到的邮件可能的出错
categoryId=183        申根签证_探亲访友类        ${field.get("521")}--${field.get("527")}
categoryId=184        长期签证_留学,互惠生类        ${field.get("528")}--${field.get("534")}
categoryId=185        申根签证_商务类                ${field.get("535")}--${field.get("541")}
categoryId=186        长期签证_团聚结婚类        ${field.get("542")}--${field.get("548")}
categoryId=187        短期签证_团体类                ${field.get("549")}--${field.get("556")}

如果你要预约团聚结婚(AAA=186),周三 7月11日,13:30-14:00 查到BBBB是3896

你输入如下的链接
https:// service2.diplo.de/rktermin/extern/appointment_showForm.do?locationCode=shan&realmId=96&categoryId=186&dateStr=11.07.2012&openingPeriodId=3896
(如果你复制链接,请删除https://和service2之间的空格)

这样,你就可以直接预约了。当然,如果没有空位,还是不能预约成功。但是,如果你事前已经占了一个空位,那么,你退约后,还是可以用上面的链接成功预约。

因为“漏洞一”已经补上一部分,所以,你也已经不能用上面的链接申请开放日以后的预约时间了。比如,今天(4月23日),你不能约7月17日以后的。

比如7月18日, 13:30-14:00你输入

https:// service2.diplo.de/rktermin/extern/appointment_showForm.do?locationCode=shan&realmId=96&categoryId=186&dateStr=18.07.2012&openingPeriodId=3896
(如果你复制链接,请删除https://和service2之间的空格)

就会被告知,“Bei der Bearbeitung Ihrer Buchung ist ein Fehler aufgetreten. Dieses kann z.B. dadurch verursacht worden sein dass Sie den Browser über eine sehr lange Zeit geöffnet hatten oder die Adresszeile von Hand geändert haben. Bitte schliessen Sie dieses Fenster und beginnen Sie den Buchungsvorgang neu”

其实,你可以不用理会这个错误,也不用schliessen Sie dieses Fenster(关闭浏览器之类),直接输入下面的链接

https:// service2.diplo.de/rktermin/extern/appointment_showForm.do?locationCode=shan&realmId=96&categoryId=101&dateStr=18.07.2012&openingPeriodId=3896
(如果你复制链接,请删除https://和service2之间的空格)

就可以预约占7月18日, 13:30-14:00的位置了。

要站7月25日13:30-14:00你需要输入

https:// service2.diplo.de/rktermin/extern/appointment_showForm.do?locationCode=shan&realmId=96&categoryId=101&dateStr=25.07.2012&openingPeriodId=3896
(如果你复制链接,请删除https://和service2之间的空格)

我说了,系统还有所谓的漏洞。其实,有这么多国家,每个国家的categoryId号不同,要全部补上漏洞,还要一点时间。那个categoryId=101原本是给北京用的。

现在,假如你用上面的方法占位:申请了7月18或者25号的某个时间段(占位可以用非真的信息),并收到了确认信。等系统开放到7月18或者25号,你再退约,并且同时再用正式的链接输入真实的信息,就可以保证完成预约。

具体的:
a) 选一个非繁忙的时间,比如德国时间早上5-6点,先用正确的链接输入真实的信息,然后预约。
如果成功了,你就不用管了,如果没有,说明你需要的时间段不空,这时候

b) 在浏览器A,你还是用正确的链接输入真实的信息;然后,另外开一个浏览器B,退约;再立刻回浏览器A,发送预约。这时候,那个空位就会挥作用了。

注:你有大约10分钟的时间输入你的信息。时间长了,系统也会出错(这个就是所谓的改进)。所以,你需要输入信息,退约,预约,在10分钟完成。退约的时候,会让你输入图片的字母,不要看错。


最后,有关预约用非真实信息的合理性。

以前已经说过了,人靠键盘输入,难免会发生错误;网络传输就算有循环冗余检测,也会发生碰撞;计算机的服务器端也有可能发生硬盘读写错误;等等,等等。所有的这些结果,都会造成我们输入信息的失真。所以,就算我们主观用正确的信息去预约,也会偶尔发生错误。而发生了错误,就和我们用错误的信息去预约,结果是一样的。所以,不会因为你的预约信息有误,就说你是黄牛,或者犯法。并且,程序设计已经考虑了信息出错的可能,所以,才会回发一封确认信给你,一来告诉你,你的预约已经受理;二来,希望你检查,信息是否有错。如果有错,可以用信里面的链接,取消预约,以便你可以再次预约。


* 本文内容因为一个朋友委托而研究的。他帮他妈妈预约签证到这里看病,一直没有约到,后来找我帮忙。自己一直很忙,也就没有管,直到不久前,朋友的母亲离开了。

** 我们也非常痛恨那些滥用漏洞还要赚钱的人。所以,公开漏洞,让大家都可以公平的使用!

***对预约还有问题的发信到dolc88888@ hotmail.com, 我们可以继续讨论,在这里就不一一回答了。

mikaundhugo 发表于 2012-4-23 15:13

本帖最后由 mikaundhugo 于 2012-4-23 16:13 编辑

{:5_335:} 太厉害了大侠。

乖囡 发表于 2012-4-23 15:26

LZ好厉害
不过看得我晕晕乎乎的
请教一下
这里提到的正确的链接,是指每天德国时间放出来的名额链接吗?

Summer1020 发表于 2012-4-23 15:32

预约个签证真不容易

sarax 发表于 2012-4-23 20:37

顶{:5_336:} I 服了 U

phebee 发表于 2012-4-23 20:56

试了一下,7月25号的链接可以打开,但是填完提交就说没空位了,然后就自动跳到北京的预约系统了{:5_334:}

江南织造 发表于 2012-4-23 21:19

支持一下lz

wwttbb 发表于 2012-4-23 21:20

ID101的链接打开以后访问目的不可选。。。。

月光倾城 发表于 2012-4-24 11:51

高手

eich1977 发表于 2012-4-24 13:08

大侠厉害,学习了
页: [1] 2 3
查看完整版本: 有关上海签证预约的一些技术信息供大家参考!