口腔医院挂号

最近要帮家人挂号,挂的是帝都最牛逼的口腔医院北大口腔医院的号,我心说这还不容易。

于是直接给阿信打电话,说要挂北大口腔医院的号,麻烦代为挂一下。然后把名字和身份证号给了阿信,阿信说只能工作日才能挂,周一联系我。

结果周一代理商联系他们没有挂北大口腔医院的,说有首都医科附属口腔医院的,于是退回,再跟阿信说,阿信说她来安排。然后到了周二换一个代理商来电话,结果说因为北大口腔医院只能微信挂号,所以要把微信号和密码告诉她,还有这种操作,当然是拒绝。

给阿信反馈一下,这种太不靠谱了。

可号还是要挂啊,所以研究了北大口腔医院的挂号。

人家官网说的特别详细: https://ss.bjmu.edu.cn/Html/News/Articles/470.html

  1. 微信挂号,这个需要实名认证
  2. 电话预约: 这个主要是给老年人和小朋友预约的,亲测如果8点准时肯定是打不通的,但是往前提5分钟,或者往后延5分钟打,那都是没有问题,但是需要输入身份证号来验证是否是老年人或者小朋友。
  3. 网络预约:就是114预约
  4. 现场预约,一些加急的,只能靠口腔医院的处理的,那就现场排个号
  5. 社区转诊

对于一般人说就看自己情况了。 作为搞IT的,媳妇还说每次到点微信挂号的时候,总是卡着在转圈,等不转了也1分钟过去了,也没号了。那我就义不容辞研究一下这个小程序挂号。

通过抓包大概看了下,这个小程序是外包给第三方做的。里面主要是2个域名:

1
2
xcx.xxxxxx.net
bdkq.xxxxx.cn

用dig和第三方监控看了下,这2个域名就都各自只有一个解析,这里感谢一些 https://www.17ce.com/ 这些平台。

但是因为平时不卡,那就意味着这肯定是这个ip的出口流量,或者连接被占满了,导致等待响应中了。但也有可能是负载均衡的后面服务器响应不过来,但是因为这种类似秒杀的场景,一般资源还行,只是无法瞬时承载那么多的请求,所以有些网站会做一个排队限流。当年猴王的小米手机抢购就是这样搞的。

所以我要是能找到另外一个入口的话,是不是就能绕过前面2个堵点了,至于最后的那个要不行,那也至少也先到,可能处理的快点。 所以就需要尽快找到别的ip作为入口。怎么办? 那就再查查历史解析吧。

我就用了 https://search.censys.io/ 来查看历史解析,结果发现也是就这一个解析。好吧,看来他们用的还挺稳定, 一直都没有换。

现在只能自己找地址了,一查ip是对应的阿里云上海的ip,这个上海外包公司选的地址还行。

对于客户用云来说,最大的好处是ip随便换,而且ip段都特别大,不大好找,而用IDC的相对好弄,都是/24这样的网段,前后找找就是了。

那也不能放弃啊,于是就从这个上海阿里云的ip找到对应的网段,结果发现居然是一个/14的网段,这里有多少地址呢: 256 * 256 * 4, 就是4个/16的网段。而且其实阿里云上海还有别的网段,只是这个ip是归属于这个ip段。

想知道阿里云都有多少ip段,那看看https://whois.ipip.net/AS37963 这个就知道了。

不过分配到阿里云上海的其实也就其中几个,但是也是够多了。

既然ip段有了,那就扫一下看看吧。

1
sudo nmap -sS -p 443  xxx.xxx.0.0/14

这里为什么就扫443端口呢,因为443上一般都会绑定证书,这样通过证书就可以查询到具体绑定了哪个域名。所以我们就只通过syn的方式扫一下,用syn扫主要是就发一个syn包,而不会像正常tcp连接3次握手那样后续再发个ack给服务器,这样一般的防火墙也都不会记录下来。但是因为收到了前面服务器返回的syn+ack,那我就知道了这个机器的443端口是打开的。

找到这些打开了443端口的ip后就用openssl来获取对应ip的证书信息就行了。

1
openssl s_client -connect xxx.xxx.xxx.xxx:443 -debug | grep 'subject=CN'

但是这个方法有个缺点是,一旦这个ip绑定了多个证书的话,那这里获取的就是默认的那个证书,那我们就用curl来处理吧, 但是这个其实有风险,毕竟你发起了一次正常的curl请求了。

1
curl -vvv  --resolve xcx.xxxxx.net:443:xxx.xxx.xxx.xxx https://xcx.xxxxx.net -o /dev/null | grep 'subject: CN'

后来查了下,发现openssl也是可以完成的。这样一般7层日志里就不会记录了。

1
echo | openssl s_client -showcerts -connect xxx.xxx.xxx.xxx:443 -servername xcx.xxxx.net | openssl x509 -noout -dates

最后扫了一圈,发现他们果然在这个ip段里各自还搞了一个ip,在路由器上绑定一下,重新抓包发现可以用了。不过最后没有用上,还是打电话挂号的,因为打电话挂号是早上8点。。。。。