mirror of
https://github.com/cowrie/cowrie.git
synced 2025-07-01 18:07:27 -04:00
@ -87,22 +87,55 @@ class command_uname(HoneyPotCommand):
|
|||||||
"""
|
"""
|
||||||
TODO: getopt style parsing
|
TODO: getopt style parsing
|
||||||
"""
|
"""
|
||||||
|
opts = {
|
||||||
|
'name': False,
|
||||||
|
'release': False,
|
||||||
|
'version': False,
|
||||||
|
'os': False,
|
||||||
|
'node': False,
|
||||||
|
'machine': False
|
||||||
|
}
|
||||||
if not self.args:
|
if not self.args:
|
||||||
|
# IF no params output default
|
||||||
self.write('{}\n'.format(kernel_name()))
|
self.write('{}\n'.format(kernel_name()))
|
||||||
elif self.args[0].strip() in ('-a', '--all'):
|
else:
|
||||||
self.write(self.full_uname())
|
# I have parameter to parse
|
||||||
elif self.args[0].strip() in ('-s', '--kernel-name'):
|
for a in self.args:
|
||||||
self.write('{}\n'.format(kernel_name()))
|
a = a.strip()
|
||||||
elif self.args[0].strip() in ('-r', '--kernel-release'):
|
if a in ('-h', '--help'):
|
||||||
self.write('{}\n'.format(kernel_version()))
|
|
||||||
elif self.args[0].strip() in ('-o', '--operating-system'):
|
|
||||||
self.write('{}\n'.format(operating_system()))
|
|
||||||
elif self.args[0].strip() in ('-n', '--nodename'):
|
|
||||||
self.write('{}\n'.format(self.protocol.hostname))
|
|
||||||
elif self.args[0].strip() in ('-m', '--machine', '-p', '--processor', '-i', '--hardware-platform'):
|
|
||||||
self.write('{}\n'.format(hardware_platform()))
|
|
||||||
elif self.args[0].strip() in ('-h', '--help'):
|
|
||||||
self.write(uname_help())
|
self.write(uname_help())
|
||||||
|
return
|
||||||
|
elif a in ('-a', '--all'):
|
||||||
|
self.write(self.full_uname())
|
||||||
|
return
|
||||||
|
elif a in ('-s', '--kernel-name'):
|
||||||
|
opts['name'] = True
|
||||||
|
elif a in ('-r', '--kernel-release'):
|
||||||
|
opts['release'] = True
|
||||||
|
elif a in ('-v', '--kernel-version'):
|
||||||
|
opts['version'] = True
|
||||||
|
elif a in ('-o', '--operating-system'):
|
||||||
|
opts['os'] = True
|
||||||
|
elif a in ('-n', '--nodename'):
|
||||||
|
opts['node'] = True
|
||||||
|
elif a in ('-m', '--machine', '-p', '--processor', '-i', '--hardware-platform'):
|
||||||
|
opts['machine'] = True
|
||||||
|
'''
|
||||||
|
I have all the option set
|
||||||
|
'''
|
||||||
|
if opts['name']:
|
||||||
|
self.write('{} '.format(kernel_name()))
|
||||||
|
if opts['node']:
|
||||||
|
self.write('{} '.format(self.protocol.hostname))
|
||||||
|
if opts['release']:
|
||||||
|
self.write('{} '.format(kernel_version()))
|
||||||
|
if opts['version']:
|
||||||
|
self.write('{} '.format(kernel_build_string()))
|
||||||
|
if opts['machine']:
|
||||||
|
self.write('{} '.format(hardware_platform()))
|
||||||
|
if opts['os']:
|
||||||
|
self.write('{} '.format(operating_system()))
|
||||||
|
self.write('\n')
|
||||||
|
|
||||||
|
|
||||||
commands['/bin/uname'] = command_uname
|
commands['/bin/uname'] = command_uname
|
||||||
|
|||||||
Reference in New Issue
Block a user