Dayu

sCRiPt n00b

PHP反序列化初探笔记

序列化和反序列化

  • 序列化就是使用serialize()将对象的用字符串的方式进行表示,反序列化是使用unserialize()将序列化的字符串,构造成相应的对象,反序列化是序列化的逆过程。

  • 序列化的对象可以是class也可以是Array,string等其他对象。

Sql盲注常用函数回顾

  • CONCAT(str1,str2,…)
    返回来自于参数连结的字符串。如果任何参数是NULL,返回NULL。可以有超过2个的参数。一个数字参数被变换为等价的字符串形式。

  • ASCII(str)
    返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回0。如果str是NULL,返回NULL。

  • ORD(str)
    ORD()函数同ascii(),将字符转为ascii值

今天写的三道CTF题的Python脚本

0x01 快速口算

小明要参加一个高技能比赛,要求每个人都要能够快速口算四则运算,2秒钟之内就能够得到结果,但是小明就是一个小学生没有经过特殊的培训,那小明能否通过快速口算测验呢?
题目地址:

1
http://lab1.xseclab.com/xss2_0d557e6d2a4ac08b749b61473a075be1/index.php

代码:

Python基础学习笔记(二)

四、Python异常处理

0x01 简介

  • 异常处理就是为了防止程序运行异常时候结束掉了整个程序,比如你访问一个网站,访问不通了,这种情况出现异常导致程序被结束你肯定不希望,所以用try…except..进行捕获异常,对异常进行处理,目的就是不想在异常发生时结束了程序,所以需要在try中捕获。当我们认为某些代码可能会出错时,就可以用try来运行这段代码,如果执行出错,则后续代码不会继续执行,而是直接跳转至错误处理代码,即except语句块, 执行完except后,如果有finally语句块,则执行finally语句块。

0x02 格式

Python基础学习笔记(一)

一、Python基础

0x01 运行机制

  • python解释型语言,因此在运行时解释器将源码转换为字节码,然后再由解释器来执行这些字节码。虚拟机执行脚本:1.完成模块的加载和链接;2.将源代码翻译为PyCodeObject对象(这货就是字节码),并将其写入内存当中(方便CPU读取,起到加速程序运行的作用);3.从上述内存空间中读取指令并执行;4. 程序结束后,根据命令行调用情况(即运行程序的方式)决定是否将PyCodeObject写回硬盘当中(也就是 直接复制到.pyc或.pyo文件中);5.之后若再次执行该脚本,则先检查本地是否有上述字节码文件。有则执行,否则重复上述步骤。

Proudly powered by Hexo and Theme by Hacker
© 2019 大宇