From 908976c70aa49d4ec102e28c99b6d761b2319705 Mon Sep 17 00:00:00 2001 From: Matt Weeks Date: Fri, 17 Sep 2010 21:41:08 +0000 Subject: [PATCH] Add ability to refresh console list, and only start polling for input on sessions when the window is opened. git-svn-id: file:///home/svn/framework3/trunk@10359 4d416f70-5f16-0410-b530-b9f4589650da --- data/gui/msfgui.jar | Bin 678526 -> 680057 bytes .../msfguijava/src/msfgui/InteractWindow.java | 2 +- .../gui/msfguijava/src/msfgui/MainFrame.form | 9 ++++++ .../gui/msfguijava/src/msfgui/MainFrame.java | 27 ++++++++++++++++-- .../src/msfgui/resources/MainFrame.properties | 1 + 5 files changed, 36 insertions(+), 3 deletions(-) diff --git a/data/gui/msfgui.jar b/data/gui/msfgui.jar index 4a4957538c83823ffb9d9e1377aaf0ea1721f7ef..57af5f472783ed46959de29828fc517cc66752ac 100644 GIT binary patch delta 39775 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 delta 39010 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 Q5&x2sG#Y<=VY){1KOvvIP5=M^ diff --git a/external/source/gui/msfguijava/src/msfgui/InteractWindow.java b/external/source/gui/msfguijava/src/msfgui/InteractWindow.java index 87f04c0674..b1238abcba 100644 --- a/external/source/gui/msfguijava/src/msfgui/InteractWindow.java +++ b/external/source/gui/msfguijava/src/msfgui/InteractWindow.java @@ -133,7 +133,7 @@ public class InteractWindow extends MsfFrame { } else{ cmdPrefix = "session." + type + "_"; } - timerCommand = new StringBuffer(""+POLL); + timerCommand = new StringBuffer(""+PAUSE); prompt = ">>>"; //start new thread polling for input diff --git a/external/source/gui/msfguijava/src/msfgui/MainFrame.form b/external/source/gui/msfguijava/src/msfgui/MainFrame.form index 836793e151..47fd8a845c 100644 --- a/external/source/gui/msfguijava/src/msfgui/MainFrame.form +++ b/external/source/gui/msfguijava/src/msfgui/MainFrame.form @@ -620,6 +620,15 @@ + + + + + + + + + diff --git a/external/source/gui/msfguijava/src/msfgui/MainFrame.java b/external/source/gui/msfguijava/src/msfgui/MainFrame.java index cfd7d47a78..dcb3929624 100644 --- a/external/source/gui/msfguijava/src/msfgui/MainFrame.java +++ b/external/source/gui/msfguijava/src/msfgui/MainFrame.java @@ -314,7 +314,13 @@ public class MainFrame extends FrameView { public void getModules() { searchWin = new SearchWindow(rpcConn); MsfguiApp.addRecentModules(rpcConn, this); + getContext().getActionMap(this).get("moduleTask").actionPerformed(new java.awt.event.ActionEvent(this,1234,"")); + } + /** Makes a menu tree with expandList for exploits and auxiliary. Also start jobs/sessions watcher. */ + public void refreshConsoles(){ + existingConsoleMenu.removeAll(); + closeConsoleMenu.removeAll(); //Setup consoles try{ Object[] consoles = (Object[]) ((Map)rpcConn.execute("console.list")).get("consoles"); @@ -323,7 +329,6 @@ public class MainFrame extends FrameView { }catch (MsfException mex){ JOptionPane.showMessageDialog(getFrame(), mex); } - getContext().getActionMap(this).get("moduleTask").actionPerformed(new java.awt.event.ActionEvent(this,1234,"")); } /** helper for getModules - does the work */ @@ -372,6 +377,9 @@ public class MainFrame extends FrameView { pluginsMenu.setEnabled(true); consoleMenu.setEnabled(true); reloadDb(); + setProgress(0.95f); + setMessage("Finding open consoles"); + refreshConsoles(); setProgress(1.0f); } catch (MsfException ex) { statusAnimationLabel.setText("Error getting module lists. " + ex); @@ -529,6 +537,7 @@ public class MainFrame extends FrameView { newConsoleItem = new javax.swing.JMenuItem(); existingConsoleMenu = new javax.swing.JMenu(); closeConsoleMenu = new javax.swing.JMenu(); + refreshConsolesItem = new javax.swing.JMenuItem(); databaseMenu = new javax.swing.JMenu(); connectItem = new javax.swing.JMenuItem(); disconnectItem = new javax.swing.JMenuItem(); @@ -895,6 +904,15 @@ public class MainFrame extends FrameView { closeConsoleMenu.setName("closeConsoleMenu"); // NOI18N consoleMenu.add(closeConsoleMenu); + refreshConsolesItem.setText(resourceMap.getString("refreshConsolesItem.text")); // NOI18N + refreshConsolesItem.setName("refreshConsolesItem"); // NOI18N + refreshConsolesItem.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + refreshConsolesItemActionPerformed(evt); + } + }); + consoleMenu.add(refreshConsolesItem); + menuBar.add(consoleMenu); databaseMenu.setMnemonic('D'); @@ -1097,7 +1115,7 @@ public class MainFrame extends FrameView { .addGroup(statusPanelLayout.createSequentialGroup() .addContainerGap() .addComponent(statusMessageLabel) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 698, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 696, Short.MAX_VALUE) .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(statusAnimationLabel) @@ -1409,6 +1427,10 @@ public class MainFrame extends FrameView { } }//GEN-LAST:event_delWorkspaceItemActionPerformed + private void refreshConsolesItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_refreshConsolesItemActionPerformed + refreshConsoles(); + }//GEN-LAST:event_refreshConsolesItemActionPerformed + /** Runs command on all current meterpreter sessions in new thread; posting updates for each thread */ private void runOnAllMeterpreters(String cmd, String output, JLabel outputLabel) { SessionCommand.runOnAllMeterpreters(sessionsTableModel, cmd, output, outputLabel, rpcConn); @@ -1694,6 +1716,7 @@ public class MainFrame extends FrameView { private javax.swing.JMenu postMenu; private javax.swing.JProgressBar progressBar; public javax.swing.JMenu recentMenu; + private javax.swing.JMenuItem refreshConsolesItem; private javax.swing.JMenuItem refreshItem; private javax.swing.JMenuItem searchItem; private javax.swing.JScrollPane servicesPane; diff --git a/external/source/gui/msfguijava/src/msfgui/resources/MainFrame.properties b/external/source/gui/msfguijava/src/msfgui/resources/MainFrame.properties index bd1751b7d7..cde1cdeb6c 100644 --- a/external/source/gui/msfguijava/src/msfgui/resources/MainFrame.properties +++ b/external/source/gui/msfguijava/src/msfgui/resources/MainFrame.properties @@ -92,3 +92,4 @@ lootsPane.TabConstraints.tabTitle=Loots currWorkspaceItem.text=Select Workspace addWorkspaceItem.text=Add Workspace delWorkspaceItem.text=Delete Workspace +refreshConsolesItem.text=Refresh Existing