immutable 是很多 dalao 的文章里常见的词,意思是“不可变的”。Python 中也有可变类型和不可变类型,本文简单解释它们之间的区别,辅助理解即可。
这里有两个函数:
123456789def f1(x=0): x+=1 #① print(x) print(id(x))def f2(x=[]): x.append('1') #② print(x) print(id(x))
运行 f1() 三次结果均为 1,但运行 f2() 三次的结果却是 [1],[
阅读全文
Cyrus Blog
FLAG{S0_H4PPY_C_U_H3R3} (>.<)
2小时入门Django·简明指南
0x00 一些前提
有Python使用基础
不一定有数据库操作基础(本文使用sqlite)
不限于Python2或者Python3
不限于操作系统(熟练你的操作系统即可,本文以MacOS/Linux为例)
如果满足上述前提,你可以在2-3hr内看完本文,一步步完成Django框架的基础学习,并且搭建出一个有数据库的基础的展示网页。
本文遵循黑箱使用原则,最小程度的涉及底层的工作原理。
本文参考了:https://tutorial.djangogirls.org/zh/
详细中文文档参见:ht
阅读全文
通过逆向实现MacOS QQ防撤回
0x00 前期准备
安装 Hopper Disassembler,可以从 官网 或者 Xclient.info 下载破解版。
安装 QQ,测试版本为版本 5.5.1,经测试直至 6.3.0 可用,更新版本可在备份 app 后自行尝试。
0x01 反编译
把 QQ 拖入主界面,在 labels 搜索 handleRecallNotify,等待上方进度条结束,得到伪代码。进度条可能比较慢。
然后把第一行的 push rbp 直接改为 ret,光标在 rbp 处按 option + A 填入
阅读全文
CUIT 2017 线下赛
1. 抢别人webshell。发现被打之后,如果找到webshell,修复之前用打自己的webshell把全场打一遍,可能别人还没发现。
2. 被打立刻找log。find / -name log 并且尽早查看。
3. 别纠结本地测试。本地简单测试后就上server,可能服务器的权限是特殊设置的,可以通过。
4. 就算允许也别瞎扫。webdirscan扫的时候注意某云可能会ban掉ip。
5. 脚本不完善且受害范围不大就先手动补,等写完脚本可能会增加被攻击轮数。
6. 多换网络环境。
7. 找到e
阅读全文
CTF脑洞总结(置顶+不定期更新)
SCTF-2017
签到MISC题什么的不会是什么高深的密码学,常规解码+栅栏+凯撒,比如这种:
Z2dRQGdRMWZxaDBvaHRqcHRfc3d7Z2ZoZ3MjfQ==
Git题什么的可以直接用四叶草的GitHack(尤其是在做四叶草比赛的时候)
git clone https://github.com/BugScanTeam/GitHack
git log -u 查看历史提交记录
报错 refname '8894bb4d45643d52b5eb8175710999fcd39
阅读全文
Ubuntu工作环境配置不完全指南
在物理机安装了Ubuntu 16.04.02。下面是一些配置工作环境过程中遇到的一些小问题。
0x00 Bash:调整$PS1解决命令行首字符无法删除
既然配置成工作环境,自然就需要更加完美。
由于自己一直使用原生的Bash,一般用调整PS1环境变量的方法更改一下配色。曾经Bash中有一个奇怪的问题,有时候命令行首的几个字符始终无法删除,但是事实上已经不在了,后面的命令可以正常运行。
PS1中要注意以下两个问题:
换行要写成 \r\n
\e[??m 的指令建议用 […] 包括,防止一些奇奇怪
阅读全文
后端入门 0x00 名词都看不懂
前端初体验,很悲催的选了一个中文GuideBook都找不到的SailsJS,然后经历了各种名次的混乱。这里写一写一些名词的相关知识以及我自己的理解。
MVC框架
之前上线某个学长写好的CTF招新网站,看了一下beego的后端,发现了models、views、controllers三个文件夹。MVC框架就是指的这三个词咯。下面是Wikipedia的定义:
MVC模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图
阅读全文
爬虫实战 0x04 CET考试成绩抓取(续)
上一篇的续篇,为了抓取大面积成绩解决了一些问题。
0x03 手动制作输入文件好烦啊
因为全校的考生数据达到上万条,将excel文件提取到txt再用正则替换为输入文件格式,处理速度一度非常慢。
于是采用了xlrd、xlwt两个处理excel文件的库。
主要用法如下:
12345678910111213table=workbook.sheet_by_name(u'Sheet1')nrows = table.nrowsresworkbook=xlwt.Workbook
阅读全文
爬虫实战 0x03 CET考试成绩抓取
0x00 鸡冻人心的四级考试成绩出来了!
说好02-22上午9:00出成绩的,然而前一天晚上23:00左右就在学信网平台 http://www.chsi.com.cn/cet/ 查询到了成绩。然后群里的小伙伴表示:为什么打开这个页面提示不能查询呢?于是寝室里来了一大群小姐姐研究为什么我能查成绩。。。
已知:Firefox在电信和移动网均可查询,Firefox隐私模式也可以,Chrome/IE/Edge不能查询,Postman添加Firefox的UA不能查询。
答:Firefox默认给GET请求
阅读全文
爬虫入门 0x02 验证码识别(未完成)
环境:
123 style="margin-left: 40px;">Windows 10 64-bitPython 2.7
使用的库:
1234 style="margin-left: 40px;">pytesseractPIL (Pillow) 64-bitTesseract-OCR 64-bit
各种问题:
本来用的Py3,pytesseract需要PIL(Pillow)支持,然后PIL没有Py3版本,切换到Py2。
PIL官方没
阅读全文