zsy0226 发表于 2023-1-27 12:07:22

本帖最后由 zsy0226 于 2023-1-29 14:31 编辑

???!!!

Mike_python小 发表于 2023-1-27 13:37:21

zsy0226 发表于 2023-1-27 12:07
???!!!

没开

Mike_python小 发表于 2023-1-27 16:15:11

{:10_256:}

dolly_yos2 发表于 2023-1-27 16:19:15

先以让客户端不每次都发送用户名为目标吧,把这个问题想和处理好了很多问题就会迎刃而解了

tommyyu 发表于 2023-1-27 21:31:00

我感觉这个程序的安全程度只有 “可以让使用者无法攻入服务器”,其他的任何难度较低操作都无法避免{:10_282:},包括但不限于DDOS、无用户名登入、监听等。如果以后有数据库了还可以攻击数据库,安全性还有一点低

sfqxx 发表于 2023-1-28 15:15:30

"C:\Users\刘克安\Pictures\Screenshots\屏幕截图_20230128_151349.png"什么东喜?

sfqxx 发表于 2023-1-28 15:17:13

"C:\Users\刘克安\Pictures\Screenshots\屏幕截图_20230128_151349.png"

Mike_python小 发表于 2023-1-28 15:17:53

sfqxx 发表于 2023-1-28 15:17


看不到图片

sfqxx 发表于 2023-1-28 15:32:23

本帖最后由 sfqxx 于 2023-1-28 17:34 编辑

1.密码输错会死机,没法像用户名为空一样强制关闭
2.重启服务器就会一直打印一些文字,(同时发不了文字)
(建议重启之后关闭窗口)
@Mike_python小

Mike_python小 发表于 2023-1-28 17:18:51

sfqxx 发表于 2023-1-28 15:32
1.密码输错会死机,没法像用户名为空一样强制关闭
2.重启服务器就会一直打印一些文字,直到内存溢出(同时 ...

呃,第二点不是内存溢出导致的

今天没评分了,明天给你

sfqxx 发表于 2023-1-28 17:34:14

Mike_python小 发表于 2023-1-28 17:18
呃,第二点不是内存溢出导致的

今天没评分了,明天给你

好的,谢谢

tommyyu 发表于 2023-1-28 18:51:00

三体—夜航星 发表于 2023-1-27 08:13
还有,很明显,你那个啥用户名没做类型处理,就可以插入恶意语句,(如果是使用数据库的话)

{:10_269:}具体怎么弄,我前几天在发消息那里插入恶意语句,最后发现socket无法传递恶意对象,传完了以后就变成bytes类的变量了

三体—夜航星 发表于 2023-1-28 21:54:33

tommyyu 发表于 2023-1-28 18:51
具体怎么弄,我前几天在发消息那里插入恶意语句,最后发现socket无法传递恶意对象,传完了以后 ...

我也不太会,我忘记这是Python了。兄弟你也干网络安全?

三体—夜航星 发表于 2023-1-28 21:55:49

tommyyu 发表于 2023-1-28 18:51
具体怎么弄,我前几天在发消息那里插入恶意语句,最后发现socket无法传递恶意对象,传完了以后 ...

主要不是常见前端语音不好弄,而且我比较菜,平时也就在ctf靶场里搞搞。

三体—夜航星 发表于 2023-1-28 21:57:37

tommyyu 发表于 2023-1-27 21:31
我感觉这个程序的安全程度只有 “可以让使用者无法攻入服务器”,其他的任何难度较低操作都无法避免{:10_28 ...

确实,有道理。这玩意甚至没法用or 1=1之类万能密码,但如果密码明文传输有可能路上被抓包导致泄露。

tommyyu 发表于 2023-1-28 22:00:04

三体—夜航星 发表于 2023-1-28 21:54
我也不太会,我忘记这是Python了。兄弟你也干网络安全?

没有,就是前几天一时兴起想试试{:10_282:}>>> class My_bytes(bytes):
      def decode(self):
            exec(self.command)
            return bytes.decode(self)

   
>>> class My_str(str):
      def encode(self):
            mb = str.encode(self)
            mb = My_bytes(mb)
            mb.command = input()
            return mb

   
>>> x = My_str('C ^_^')
>>> y = x.encode()
print('Hello')
>>> y.command = '''client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('119.3.215.140', 80))
client.send('^_^'.encode())'''
>>> y.command = '''ct = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
c.connect(('119.3.215.140', 80))
c.send(f'__name__'.encode())'''
>>> def t():
      client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      client.connect(('119.3.215.140', 80))
      client.send(y)

   
>>> import socket
>>> t()

三体—夜航星 发表于 2023-1-28 22:01:01

tommyyu 发表于 2023-1-28 22:00
没有,就是前几天一时兴起想试试

会打ctf不?

tommyyu 发表于 2023-1-28 22:01:39

三体—夜航星 发表于 2023-1-28 22:01
会打ctf不?

不会{:10_282:}

三体—夜航星 发表于 2023-1-28 22:02:57

tommyyu 发表于 2023-1-28 18:51
具体怎么弄,我前几天在发消息那里插入恶意语句,最后发现socket无法传递恶意对象,传完了以后 ...

还有个原因,Python没有很危险的函数。php有eval可以传一句话木(马

三体—夜航星 发表于 2023-1-28 22:04:23

tommyyu 发表于 2023-1-28 18:51
具体怎么弄,我前几天在发消息那里插入恶意语句,最后发现socket无法传递恶意对象,传完了以后 ...

换个方向,看看能不能内容或者用户名传os.system()函数。
页: 1 [2] 3 4
查看完整版本: 关于Python聊天室的BUG反馈