def __init__(self, parent=None, widgets=None): super(PumpkinSettings, self).__init__(parent) self.SettingsAp = widgets['SettingsAP'] self.Tab_Dock = widgets['Tab_dock'] self.dockInfo = widgets['DockInfo'] self.FSettings = widgets['Settings'] self.NetworkGroup = widgets['Network'] self.mainLayout = QtGui.QFormLayout() self.SettingsDHCP = {} #scroll area self.scrollwidget = QtGui.QWidget() self.scrollwidget.setLayout(self.mainLayout) self.scroll = QtGui.QScrollArea() self.scroll.setWidgetResizable(True) self.scroll.setWidget(self.scrollwidget) self.GroupDHCP = QtGui.QGroupBox() self.GroupArea = QtGui.QGroupBox() self.layoutDHCP = QtGui.QFormLayout() self.layoutArea = QtGui.QFormLayout() self.layoutbuttons = QtGui.QHBoxLayout() self.btnDefault = QtGui.QPushButton('Default') self.btnSave = QtGui.QPushButton('save settings') self.btnSave.setIcon(QtGui.QIcon('icons/export.png')) self.btnDefault.setIcon(QtGui.QIcon('icons/settings.png')) self.dhcpClassIP = QtGui.QComboBox() # dhcp class self.classtypes = [ 'Class-A-Address', 'Class-B-Address', 'Class-C-Address', 'Class-Custom-Address' ] for types in self.classtypes: if 'Class-{}-Address'.format( self.FSettings.Settings.get_setting('dhcp', 'classtype')) in types: self.classtypes.remove(types), self.classtypes.insert(0, types) self.dhcpClassIP.addItems(self.classtypes) self.leaseTime_def = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'leasetimeDef')) self.leaseTime_Max = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'leasetimeMax')) self.netmask = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'netmask')) self.range_dhcp = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'range')) self.route = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'router')) self.subnet = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'subnet')) self.broadcast = QtGui.QLineEdit( self.FSettings.Settings.get_setting('dhcp', 'broadcast')) self.dhcpClassIP.currentIndexChanged.connect(self.dhcpClassIPClicked) self.GroupDHCP.setTitle('DHCP-Settings') self.GroupDHCP.setLayout(self.layoutDHCP) self.layoutDHCP.addRow('Class Ranges', self.dhcpClassIP) self.layoutDHCP.addRow('default-lease-time', self.leaseTime_def) self.layoutDHCP.addRow('max-lease-time', self.leaseTime_Max) self.layoutDHCP.addRow('subnet', self.subnet) self.layoutDHCP.addRow('router', self.route) self.layoutDHCP.addRow('netmask', self.netmask) self.layoutDHCP.addRow('broadcast-address', self.broadcast) self.layoutDHCP.addRow('range-dhcp', self.range_dhcp) self.GroupDHCP.setFixedWidth(350) # layout add self.layoutbuttons.addWidget(self.btnSave) self.layoutbuttons.addWidget(self.btnDefault) self.layoutDHCP.addRow(self.layoutbuttons) # Area Group self.gridArea = QtGui.QGridLayout() self.CB_ActiveMode = QtGui.QCheckBox( '::Advanced Mode:: Monitor MITM Attack') self.CB_ActiveMode.setHidden(True) self.CB_Cread = QtGui.QCheckBox('HTTP-Authentication') self.CB_monitorURL = QtGui.QCheckBox('HTTP-Requests') self.CB_bdfproxy = QtGui.QCheckBox('BDFProxy-ng') self.CB_dns2proxy = QtGui.QCheckBox('Dns2Proxy') self.CB_responder = QtGui.QCheckBox('Responder') self.CB_pumpkinPro = QtGui.QCheckBox('Pumpkin-Proxy') self.CB_ActiveMode.setChecked( self.FSettings.Settings.get_setting('dockarea', 'advanced', format=bool)) self.CB_Cread.setChecked( self.FSettings.Settings.get_setting('dockarea', 'dock_credencials', format=bool)) self.CB_monitorURL.setChecked( self.FSettings.Settings.get_setting('dockarea', 'dock_urlmonitor', format=bool)) self.CB_bdfproxy.setChecked( self.FSettings.Settings.get_setting('dockarea', 'dock_bdfproxy', format=bool)) self.CB_dns2proxy.setChecked( self.FSettings.Settings.get_setting('dockarea', 'dock_dns2proxy', format=bool)) self.CB_responder.setChecked( self.FSettings.Settings.get_setting('dockarea', 'dock_responder', format=bool)) self.CB_pumpkinPro.setChecked( self.FSettings.Settings.get_setting('dockarea', 'dock_PumpkinProxy', format=bool)) #connect self.doCheckAdvanced() self.CB_ActiveMode.clicked.connect(self.doCheckAdvanced) self.CB_monitorURL.clicked.connect(self.doCheckAdvanced) self.CB_Cread.clicked.connect(self.doCheckAdvanced) self.CB_bdfproxy.clicked.connect(self.doCheckAdvanced) self.CB_dns2proxy.clicked.connect(self.doCheckAdvanced) self.CB_responder.clicked.connect(self.doCheckAdvanced) self.CB_pumpkinPro.clicked.connect(self.doCheckAdvanced) # group self.layoutArea.addRow(self.CB_ActiveMode) self.gridArea.addWidget( self.CB_monitorURL, 0, 0, ) self.gridArea.addWidget(self.CB_Cread, 0, 1) self.gridArea.addWidget(self.CB_responder, 0, 2) self.gridArea.addWidget(self.CB_bdfproxy, 1, 0) self.gridArea.addWidget(self.CB_bdfproxy, 1, 0) self.gridArea.addWidget(self.CB_dns2proxy, 1, 1) #self.gridArea.addWidget(self.CB_pumpkinPro,0,2) disable tab plugin self.layoutArea.addRow(self.gridArea) self.GroupArea.setTitle('Activity Monitor settings') self.GroupArea.setLayout(self.layoutArea) # connects self.btnDefault.clicked.connect(self.setdefaultSettings) self.btnSave.clicked.connect(self.savesettingsDHCP) self.mainLayout.addRow(self.SettingsAp) self.mainLayout.addRow(self.NetworkGroup) self.mainLayout.addRow(self.GroupArea) self.mainLayout.addRow(self.GroupDHCP) self.layout = QtGui.QHBoxLayout() self.layout.addWidget(self.scroll) self.addLayout(self.layout)
def __init__(self, mainWindow): QtGui.QVBoxLayout.__init__(self) self.mainLayout = QtGui.QFormLayout() self.main_method = mainWindow self.scrollwidget = QtGui.QWidget() self.scrollwidget.setLayout(self.mainLayout) self.scroll = QtGui.QScrollArea() self.scroll.setWidgetResizable(True) self.scroll.setWidget(self.scrollwidget) self.split_window = QtGui.QHBoxLayout() guageWindow = QtGui.QGridLayout() self.currentThreadLabel = QtGui.QLabel('0') currentthread = self.create_info_box('CURRENT THREADS', 'infor', self.currentThreadLabel) self.sectionTimeLabel = QtGui.QLabel('00:00') currentTime = self.create_info_box('UPTIME', 'infor', self.sectionTimeLabel) guageWindow.addLayout(currentthread, 1, 1) guageWindow.addLayout(currentTime, 0, 1) self.AP_name = QtGui.QLabel(self.main_method.EditApName.text()) self.AP_BSSID = QtGui.QLabel(self.main_method.EditBSSID.text()) self.AP_Channel = QtGui.QLabel(self.main_method.EditChannel.text()) self.AP_NetworkApdater = QtGui.QLabel( self.main_method.selectCard.currentText()) self.AP_ROUTER = QtGui.QLabel(self.main_method.DHCP['router']) self.AP_DHCP_range = QtGui.QLabel(self.main_method.DHCP['range']) self.AP_Security = QtGui.QLabel('') self.update_security_label( self.main_method.GroupApPassphrase.isChecked()) self.group_AccessPoint = QtGui.QGroupBox() self.form_window = AutoGridLayout() self.form_window.setSpacing(10) self.group_AccessPoint.setTitle('Access Point') self.form_window.addNextWidget(QtGui.QLabel('AP Name:')) self.form_window.addNextWidget(self.AP_name) self.form_window.addNextWidget(QtGui.QLabel('BSSID:')) self.form_window.addNextWidget(self.AP_BSSID) self.form_window.addNextWidget(QtGui.QLabel('Channel:')) self.form_window.addNextWidget(self.AP_Channel) self.form_window.addNextWidget(QtGui.QLabel('Network Adapter:')) self.form_window.addNextWidget(self.AP_NetworkApdater) self.form_window.addNextWidget(QtGui.QLabel('Router:')) self.form_window.addNextWidget(self.AP_ROUTER) self.form_window.addNextWidget(QtGui.QLabel('DHCP:')) self.form_window.addNextWidget(self.AP_DHCP_range) self.form_window.addNextWidget(QtGui.QLabel('Security Password:')) self.form_window.addNextWidget(self.AP_Security) self.form_window.addItem( QtGui.QSpacerItem(40, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)) self.group_AccessPoint.setLayout(self.form_window) self.split_window.addWidget(self.group_AccessPoint) self.split_window.addLayout(guageWindow) self.mainLayout.addRow(self.split_window) self.layout = QtGui.QHBoxLayout() self.layout.addWidget(self.scroll) self.addLayout(self.layout)