20220907

Requirement

Am:

  1. 单词半小时
  2. 行测图推常识半小时,找到解题策略
  3. 看美剧一集
  4. 找到Leetcode刷题方法

Pm:

  1. 找模型安全文献阅读

Summary

数量关系六大题型

  1. 行程问题
  2. 相遇追及问题
  3. 流水行船问题
  4. 时钟问题
  5. 工程问题
  6. 浓度问题

python config module case not distinguish

Question

python configparser模块不区分大小写问题

Analysis

经源码分析,configparser内部存在自动转化小写代码.

    def optionxform(self, optionstr):
        return optionstr.lower()

Solution

找到原因,只需要重写该函数即可。

class myconf(configparser.ConfigParser):
    def __init__(self,defaults=None):
        configparser.ConfigParser.__init__(self,defaults=None)
    # 区分大小写
    def optionxform(self, optionstr):
        return optionstr

Github push some question

Question

git push >> fatal: no configured push destination

Analysis

像返回错误所说,我们在download下来的自由仓库想push上去除了进行下列操作

git init
git add *

还需要添加远程仓库

git remote add origin git@github.com:/demo_app.git
git push -u origin master

Windows mklink Desktop to another dick

  1. 在别的磁盘创建好该文件夹
  2. 打开cmd
  3. 执行命令mklink /j "C:\Users\ayjin\Desktop\你想在桌面显示的名字" "G:\创建好的文件夹名"
    例如mklink /j "C:\Users\ayjin\Desktop\Develop" "G:\Develop"
  4. 执行完命令后你就可以在桌面看到Develop文件夹,打开即在G盘的Develop

济南大学CAS登陆详记

  • Description
    最近要开学了,需要7天的体温上报,之前漏了两天,想着写个脚本自动填报。最开始以为还挺容易的,登录验证拿个Cookie直接梭哈post就可以,后面...是我太年轻

  • Processing
    首先介绍下背景,济南大学的体温上报正常方式是走微信的智慧济大接口进行填报,很自然就想到抓个包找找提交接口然后python post即可,然后就迎来了第一个坑,夜神模拟器安卓7以后的Fiddler证书不支持自主导入了,这个你们可以google看看,有很多失败案例。解决方案如链接,大家可以进去看看~

  • Monitor SSL&Fiddler config
    解决方案:
    https://www.licqi.com/artikel/10314.html

  • Fiddler Traffic capture
    正常配置好上面的模拟器后,我们可以抓到接口
    url:'http://fanxiao.ujn.edu.cn/resultOffHealthyDay/addOffHealthyDay'
    什么?你想手动登录进去然后进页面直接填报?太年轻啦~你可以试试
    仔细看看我们抓的包携带的Cookie和你登陆完的Cookie JessionId是不一样的,所以你不能直接提交。
    其次是什么呢?前端页面有定位绕过限制,如果你不提前抓包,你是不知道微信提交的Latitude和Longtitdu的格式。总之,这条路也是不好走的,我们还是得解决这个Cookie怎么解决的问题。
    现在我们知道了,提交的Cookie是带Sig的,目标锁定在Sig获取上面。

  • Cookie sig analysis
    这里光看微信抓到的包相信已经作用不大了,我们尝试进入https://fanxiao.ujn.edu.cn/
    我们可以发现,这里是会给你重定向到一个登录界面的,选择统一身份验证,进去后记得打开好Fiddler开始抓包。
    我们可以看到整个请求过程是
    登录请求POST:https://sso.ujn.edu.cn/tpass/login?service=http://fanxiao.ujn.edu.cn/cas/index
    携带data:rsa/ul/pl/lt/execution/_eventId
    rsa:为学号、密码、lt字符拼接和DES加密生成的加密数据
    ul:学号长度
    pl:密码长度
    lt/execution:页面可以get请求得到,自己xpath可以拿到
    _eventId:固定为submit
    然后你会看到返回什么呢?这里埋个坑,你可能觉得我是不是请求失败了~
    然后你会发现整个抓包流有一个过程就是:登录请求->拿到票据->拿到Cookie{Jessionid&&Sig}
    对应的请求顺序为:
    first:https://sso.ujn.edu.cn/tpass/login?service=http://fanxiao.ujn.edu.cn/cas/index
    second:'http://fanxiao.ujn.edu.cn/cas/index?' + ticket
    经查阅资料,才知道这是CAS单点登录得流程顺序
    那么这个ticket哪里来呢?
    通过分析Fiddler返回请求头,可以发现,返回数据中有一个字段为
    Location,Location后面就有着我们要的ticket
    然后带上ticket拼接我们的Second步骤,就可以为我们的requests带上Cookie,也就能够对后台用户接口进行正常的请求,这里就以UserInfo为例子进行请求,可以发现是可以拿到数据的。
    UserInfo:http://fanxiao.ujn.edu.cn/api/auth/userInfo
    至此,大工程已经可以说完成了,我们的sig也添加到了我们的返回请求头中。
    最后是提交体温上报的接口中:
    体温上报:http://fanxiao.ujn.edu.cn/resultOffHealthyDay/addOffHealthyDay

  • 源代码
    url:

关于广州大学夏令营CTF的一些话

首先呢,非常高兴能够参加这一次的夏令营。起初是因为考研没考上打算二战来着,不过现在也算调剂成功,在这次夏令营中也见识到了很多大佬和一些没听过的技术hhh

  • CTF篇
    这算是第几次参加CTF了?我也忘了,不过很明显的感觉到自己相比以前更加热爱CTF拿到flag的感觉了。
    战况是,我们队拿到了第五的成绩,差两题AC全部,虽然题目不算太难,但是也让自己明白了自己的短板,和找到了打CTF的乐趣。

现在是2022/08/28 1:42分,先睡一下~明天再更

20220815

Requirements

  • Finish research group on wxapp.
  • Read Pytorch official docs at am.
  • Join LOCI paper share meeting.