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()函数。