shadowbrokers-exploits/windows/Resources/Ops/PyScripts/lib/ops/survey/osinfo.py
2017-04-14 11:45:07 +02:00

34 lines
No EOL
1.8 KiB
Python

from __future__ import print_function
import dsz
import ops, ops.survey
import ops.cmd
import ops.system.registry
import time
from datetime import timedelta
from optparse import OptionParser
import ops.system.systemversion
INSTALL_DATE_TAG = 'OS_INSTALL_DATE_TAG'
OS_LANGUAGE_TAG = 'OS_LANGUAGE_TAG'
SYSTEMVERSION_TAG = 'OS_VERSION_TAG'
def main():
parser = OptionParser()
parser.add_option('--maxage', dest='maxage', default='3600', help='Maximum age of information to use before re-running commands for this module', type='int')
(options, args) = parser.parse_args()
ops.survey.print_header('OS information')
lang_data = ops.system.systemversion.get_os_language(maxage=timedelta(seconds=options.maxage)).languages
sysver_data = ops.system.systemversion.get_os_version(maxage=timedelta(seconds=options.maxage)).versioninfo
install_date = ops.system.systemversion.get_os_install_date(maxage=timedelta(seconds=options.maxage))
ops.survey.print_agestring(lang_data.dszobjage)
print()
dsz.ui.Echo(('OS installed on %s' % install_date), dsz.GOOD)
print('- System language settings')
print((' Locale: %s' % lang_data.localelanguage.english))
print((' Installed: %s' % lang_data.installedlanguage.english))
print((' UI: %s' % lang_data.uilanguage.english))
print((' OS: %s' % ', '.join(map((lambda x: x.english), lang_data.oslanguages.oslanguage))))
print('- System version information')
print((' Version: %d.%d.%d.%d Build %d %s %s %s' % (sysver_data.major, sysver_data.minor, sysver_data.revisionmajor, sysver_data.revisionminor, sysver_data.build, sysver_data.platform, sysver_data.arch, sysver_data.extrainfo)))
if ((__name__ == '__main__') or (__name__ == ops.survey.PLUGIN)):
main()