cmd无法运行python,会被360提醒有远程线程注入?

cmd无法运行python,会被360提醒有远程线程注入?,第1张

你是否安装了editplus?系统是win10 1903?

可能是执行Python时,优先调用了WindowsApps目录的,导致问题发生。

你可以尝试修改path环境变量,将Python路径的放最前面。

执行 where Python.exe查看执行Python时,环境变量顺序。

可以肯定的是python是可以注入游戏的。

Github上面有个项目,里面集合了不少的Python开发的小游戏也可以自己玩,也适合新手用来练习项目,另外PyGame里面集合了很多的python开发的小游戏。

python+Django 防止SQL注入

先看看那种容易被注入的SQL

id = 11001

sql = """

SELECT

id,

name,

age

FROM

student

WHERE

id = """+id+"""

"""

cursor = connection.cursor()

try:

cursor.execute(sql)

result = cursor.fetchall()

for result1 in result:

// 代码块

pass

finally:

cursor.close()

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

一般来说写SQL语句在程序中,若有where条件一般都可能会去直接拼接,到那时这种方式容易被SQL注入,首先说明下什么是SQL的注入,简单来说就是你写的SQL被别人在页面上拼接了SQL。比如拼接1=1这种条件,如果登录接口被注入1=1那么就可以随意进入你的程序了。所以才要防止SQL的注入。

下面再来看看防止SQL的注入

id = 11001

params = []

sql = """

SELECT

id,

name,

age

FROM

student

WHERE

id = %s

"""

params.append(id)

cursor = connection.cursor()

try:

cursor.execute(sql, params)

result = cursor.fetchall()

for result1 in result:

// 代码块

pass

finally:

cursor.close()

我们把直接拼接的条件变量放入集合再把集合带入执行SQL的方法,就可以避免被注入的风险,在SQL的条件中使用%s进行站位,要注意的是这个%s是有顺序的,比如说上面这个SQL后面在跟一个条件name=%s那么下面的params集合也要多加一个元素params.append(name)这个时候name是在id后面的在集合中。这样可以一一对应,但如果要是把params.append(name)写在了params.append(id)前面SQL执行就会出现id=name and name = id 的条件就乱了,甚至还会报错。

使用connection完毕之后一定要记得close,connection是django.db中的,导入不要导入错了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11535416.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存