python

python渣学习笔记

python

sqlmap的一些技术细节(5).md

阅读(1333)评论(0)

这个周末,最后的命令执行,后门,接管系列分析完成~ 命令执行sqlmap有下面命令 --os-cmd=id # 执行系统命令 --os-shell # 系统交互shell --os-pwn # 反弹shell 我们看看sqlmap是如何通过来接管系统的。 流程先理顺相关的流程,直接看代码追踪把。 先是cmd参数 然后在lib/cont...

python

sqlmap的一些技术细节(4).md

阅读(679)评论(0)

好久都没有更新这个系列,觉得自己应该把这件事做完。 安全删除文件 sqlmap的changelog有一条挺有趣的。 安全的删除output文件夹,来看看他是如何安全删除的。需要使用--purge这个命令使用,我们就直接看代码了。 代码实现在lib/utils/purge.py,主要分为这么...

python

w12scan 开发近况

阅读(1531)评论(0)

实习的公司有不少工作,只能抽些琐碎的时间来完成,而且还要写长篇大论的毕业设计,实际开发阶段在里面占比已经很小了。但我还是想写完它,如果可以开源就更好了。今天实习的最后一天,很早就下了班,所以写个w12scan的开发近况。 0x00目前整体的架构设计已经完成了,分为了一个扫描端(Client)和一个WEB端(Server),使用的技术大概有redis、mys...

python

routersploit 源码分析

阅读(1185)评论(2)

RouteSploit框架是一款开源的漏洞检测及利用框架,其针对的对象主要为路由器等嵌入式设备。 具体介绍可以看:https://www.freebuf.com/sectool/101441.html routersploit的操作模式有点类似于msf,想看看是如何实现的 Print屏幕打印最后都定位到了这个函数 def __cprint(*...

python

sqlmap的一些技术细节(3).md

阅读(954)评论(1)

这节试图讲解更深层次的东西。 sqlmap哪些地方使用了多线程多线程并发可以加快像IO密集型的操作,但是sqlmap哪里使用了多线程呢?是检测的时候?是查表的时候,还是…?带着这个疑问,有了接下来的分析。 sqlmap的一些技术细节(1)中已经分析了多线程是如何实现的,并将线程封装成了函数runThreads,所以只需要全局搜索这个函数就找到了多线程使用...

python

sqlmap的一些技术细节(2).md

阅读(3460)评论(2)

​ 如果对一个sql注入工具打分,满分是100分,相信大家都可以写个工具达到60分,但想要接下来40分就需要比之前多几倍的努力,对于技术的追求,也不应只懂得泛泛,更应该精益求精。 auth权限验证首先在sqlmap.conf可以找到和auth权限验证的相关参数 # HTTP Authentication type. Useful only if t...

python

sqlmap的一些技术细节(1).md

阅读(3180)评论(0)

一直在想为什么sqlmap能成为一款优秀的工具?而我写的却不行?sqlmap究竟有什么特殊之处?今天探索发现带大家寻找sqlmap的一些神秘细节。 bigarray 大数组当你使用dump命令导出数据的时候,有没有想过即使百万行数据sqlmap也可以导出来?从软件开发的思路来说,为了方便管理数据,会将数据存储在内存中,如果百万条数据存在内存中势必会导致内存...

python

sqlmap 1.0源码解析.md

阅读(5247)评论(1)

sqlmap1.0 源码解析 前面学习了最初版本的sqlmap,了解了大概的注入流程,同时也知道了大概的sqlmap的结构,这次学习一下sqlmap1.0的源码,看看相比之前的注入流程变化了多少,相比之前的设计增加了哪些东西以及看看sqlmap代码结构设计精巧的地方。 博主加:这篇文章已经写了好久了,但是发博客的话...

python

sqlmap早期版本(0.6.2)源码解析

阅读(1342)评论(0)

直接看sqlmap代码太痛苦了,下载了一份最早期的sqlmap来研究,tag为0.6.2,这样应该可以看到sqlmap内核中最精彩的部分吧~ 目标是了解sqlmap是怎么进行注入判断,然后自己写一款注入检测工具。 环境下载地址:https://github.com/sqlmapproject/sqlmap/tree/0.6.2 VSCODE + Pyt...

python

python 缓存函数的设计

阅读(2235)评论(1)

Python 的 decorator是一个非常一颗赛艇的语法糖,提供了很多便利。我们可以用其实现很多牛逼的功能,并且对业务代码的侵占性很小。最近业务上遇到了一个缓存的问题,如果之前请求过该函数,则返回缓存的结果就行。代码如下 def add(a,b): return a+b 如果add(1,2)没有调用过,则调用一次,并缓存该函数的返回结果...

鄂ICP备18025574号 RSS订阅

Powered by emlog © Emlog大前端 theme By 小草窝 SiteMap