Fix issues with showing popups on exit, and make it clear why start/connect fails on bad creds.
git-svn-id: file:///home/svn/framework3/trunk@12914 4d416f70-5f16-0410-b530-b9f4589650daunstable
parent
74c25c7fc9
commit
2ea3e5ee0f
Binary file not shown.
|
@ -7,7 +7,6 @@ import java.util.HashMap;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Scanner;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
/**
|
||||
|
@ -253,9 +252,9 @@ public class DbConnectDialog extends OptionsDialog {
|
|||
Map res = (Map)rpcConn.execute("db.connect",opts);
|
||||
success = "success".equals(res.get("result"));
|
||||
if(!success)
|
||||
JOptionPane.showMessageDialog(myParent, res);
|
||||
MsfguiApp.showMessage(myParent, res);
|
||||
}catch(MsfException mex){
|
||||
JOptionPane.showMessageDialog(myParent, mex);
|
||||
MsfguiApp.showMessage(myParent, mex);
|
||||
}
|
||||
setVisible(false);
|
||||
}//GEN-LAST:event_connectButtonActionPerformed
|
||||
|
|
|
@ -14,7 +14,6 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
import javax.swing.JOptionPane;
|
||||
import org.jdesktop.swingworker.SwingWorker;
|
||||
|
||||
/**
|
||||
|
@ -55,7 +54,7 @@ public class InteractWindow extends MsfFrame implements ClipboardOwner {
|
|||
if(autoCommands.get(0).toString().startsWith("use"))
|
||||
rpcConn.execute(cmdPrefix + "write", session.get("id"), data);
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(null, ex);
|
||||
MsfguiApp.showMessage(null, ex);
|
||||
}
|
||||
for(Object cmd : autoCommands) {
|
||||
try {
|
||||
|
@ -155,7 +154,7 @@ public class InteractWindow extends MsfFrame implements ClipboardOwner {
|
|||
publish(received);
|
||||
} catch (MsfException ex) {
|
||||
if(!ex.getMessage().equals("unknown session"))
|
||||
JOptionPane.showMessageDialog(null, ex);
|
||||
MsfguiApp.showMessage(null, ex);
|
||||
if(!ex.getMessage().contains("timed out")) // on timeout, just retry
|
||||
timerCommand.setCharAt(0, STOP_POLLING);
|
||||
}
|
||||
|
@ -231,7 +230,7 @@ public class InteractWindow extends MsfFrame implements ClipboardOwner {
|
|||
inputField.setText("");
|
||||
currentCommand = 0;
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(null, ex);
|
||||
MsfguiApp.showMessage(null, ex);
|
||||
}
|
||||
}
|
||||
/** This method is called from within the constructor to
|
||||
|
@ -370,7 +369,7 @@ public class InteractWindow extends MsfFrame implements ClipboardOwner {
|
|||
outputArea.append("backgrounding session...\n");
|
||||
}
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(null, ex);
|
||||
MsfguiApp.showMessage(null, ex);
|
||||
}
|
||||
}
|
||||
}//GEN-LAST:event_inputFieldKeyPressed
|
||||
|
|
|
@ -935,7 +935,6 @@
|
|||
</Properties>
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="false"/>
|
||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="2"/>
|
||||
</AuxValues>
|
||||
</Component>
|
||||
<Component class="javax.swing.JLabel" name="statusAnimationLabel">
|
||||
|
@ -945,7 +944,7 @@
|
|||
</Properties>
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="false"/>
|
||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="2"/>
|
||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="1"/>
|
||||
</AuxValues>
|
||||
</Component>
|
||||
<Component class="javax.swing.JProgressBar" name="progressBar">
|
||||
|
|
|
@ -143,6 +143,7 @@ public class MainFrame extends FrameView {
|
|||
rpcConn.execute("auth.logout");
|
||||
else
|
||||
return false;
|
||||
MsfguiApp.shuttingDown = true;
|
||||
} catch (Exception ex) {
|
||||
}
|
||||
return true;
|
||||
|
@ -356,7 +357,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
for (Object console : consoles)
|
||||
registerConsole((Map)console,false, "");
|
||||
}catch (MsfException mex){
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -389,6 +390,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
};
|
||||
//Exploits and auxiliary get modulepopups; payloads get payloadpopups duh
|
||||
setMessage("Getting exploits");
|
||||
statusAnimationLabel.setText("");
|
||||
expandList((List) ((Map)rpcConn.execute("module.exploits")).get("modules"), exploitsMenu, moduleFactory, "exploit");
|
||||
setProgress(0.3f);
|
||||
setMessage("Getting auxiliary modules");
|
||||
|
@ -1213,9 +1215,9 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
try{
|
||||
java.awt.Desktop.getDesktop().browse(new URI("http://www.metasploit.com/framework/support"));
|
||||
} catch (IOException ex){
|
||||
JOptionPane.showMessageDialog(this.getFrame(), "Can't open browser. See http://www.metasploit.com/framework/support");
|
||||
MsfguiApp.showMessage(this.getFrame(), "Can't open browser. See http://www.metasploit.com/framework/support");
|
||||
} catch ( URISyntaxException usx){
|
||||
JOptionPane.showMessageDialog(this.getFrame(), "Can't find the URL. This really should never happen. Report this bug.");
|
||||
MsfguiApp.showMessage(this.getFrame(), "Can't find the URL. This really should never happen. Report this bug.");
|
||||
}
|
||||
}//GEN-LAST:event_onlineHelpMenuActionPerformed
|
||||
|
||||
|
@ -1230,7 +1232,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
java.awt.Desktop.getDesktop().browse(new URI("file://"+MsfguiLog.defaultLog.save(
|
||||
MsfguiApp.cleanBackslashes(MsfguiApp.fileChooser.getSelectedFile().getAbsolutePath()))));
|
||||
}catch (Exception ex){
|
||||
JOptionPane.showMessageDialog(getFrame(), "Problem "+ex);
|
||||
MsfguiApp.showMessage(getFrame(), "Problem "+ex);
|
||||
}
|
||||
}
|
||||
}//GEN-LAST:event_logGenerateMenuItemActionPerformed
|
||||
|
@ -1250,7 +1252,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
Map res = (Map)rpcConn.execute("console.create");
|
||||
registerConsole(res, true, "");
|
||||
}catch(MsfException mex){
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//GEN-LAST:event_newConsoleItemActionPerformed
|
||||
|
||||
|
@ -1319,9 +1321,9 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
argHash.put("data", Base64.encode(data));
|
||||
rpcConn.execute("db.import_"+type,argHash);
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
} catch (IOException iex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), iex);
|
||||
MsfguiApp.showMessage(getFrame(), iex);
|
||||
}
|
||||
}//GEN-LAST:event_importItemActionPerformed
|
||||
|
||||
|
@ -1329,16 +1331,16 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
try {
|
||||
rpcConn.execute("db.disconnect");
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//GEN-LAST:event_disconnectItemActionPerformed
|
||||
|
||||
private void loadPlugin(String plugin){
|
||||
try {
|
||||
rpcConn.execute("plugin.load",plugin, new HashMap());
|
||||
JOptionPane.showMessageDialog(getFrame(), "Plugin "+plugin+" loaded.");
|
||||
MsfguiApp.showMessage(getFrame(), "Plugin "+plugin+" loaded.");
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}
|
||||
private void otherPluginItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_otherPluginItemActionPerformed
|
||||
|
@ -1380,7 +1382,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
return;
|
||||
rpcConn.execute("plugin.unload",plugin);
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//GEN-LAST:event_unloadPluginItemActionPerformed
|
||||
|
||||
|
@ -1402,7 +1404,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
map.put(colNames[i], tab.getValueAt(row,i));
|
||||
rpcConn.execute("db.del_"+name,map);
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//delete then readd
|
||||
reAddQuery(tab,name+"s",colNames);
|
||||
|
@ -1447,7 +1449,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
MsfguiApp.getPropertiesNode().put("workspace", MsfguiApp.workspace);
|
||||
reloadDb();
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//GEN-LAST:event_currWorkspaceItemActionPerformed
|
||||
|
||||
|
@ -1460,7 +1462,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
rpcConn.execute("db.set_workspace", name);
|
||||
reloadDb();
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//GEN-LAST:event_addWorkspaceItemActionPerformed
|
||||
|
||||
|
@ -1480,7 +1482,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
reloadDb();
|
||||
}
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
}
|
||||
}//GEN-LAST:event_delWorkspaceItemActionPerformed
|
||||
|
||||
|
@ -1558,9 +1560,9 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
"db_export -f "+type+" "+MsfguiApp.escapeBackslashes(
|
||||
MsfguiApp.fileChooser.getSelectedFile().getCanonicalPath())));
|
||||
} catch (MsfException mex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), mex);
|
||||
MsfguiApp.showMessage(getFrame(), mex);
|
||||
} catch (IOException iex) {
|
||||
JOptionPane.showMessageDialog(getFrame(), iex);
|
||||
MsfguiApp.showMessage(getFrame(), iex);
|
||||
}
|
||||
}//GEN-LAST:event_dbExportItemActionPerformed
|
||||
|
||||
|
@ -1602,7 +1604,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
addSessionItem("Stop",jobPopupMenu,new RpcAction() {
|
||||
public void action() throws Exception {
|
||||
if(!((Map)rpcConn.execute("job.stop", clickedJob)).get("result").equals("success"))
|
||||
JOptionPane.showMessageDialog(null, "stop failed.");
|
||||
MsfguiApp.showMessage(null, "stop failed.");
|
||||
}
|
||||
});
|
||||
jobsList.addMouseListener( new PopupMouseListener() {
|
||||
|
@ -1904,7 +1906,7 @@ nameloop: for (int i = 0; i < names.length; i++) {
|
|||
private javax.swing.JMenuItem socketLoggerItem;
|
||||
private javax.swing.JMenuItem soundItem;
|
||||
private javax.swing.JMenuItem startRpcMenuItem;
|
||||
private javax.swing.JLabel statusAnimationLabel;
|
||||
public javax.swing.JLabel statusAnimationLabel;
|
||||
private javax.swing.JLabel statusMessageLabel;
|
||||
private javax.swing.JPanel statusPanel;
|
||||
public javax.swing.JTabbedPane tabbedPane;
|
||||
|
|
|
@ -93,7 +93,7 @@ public class MeterpFileBrowser extends MsfFrame {
|
|||
tempFile.delete();
|
||||
} catch (IOException iox){
|
||||
tempIcon = null;
|
||||
JOptionPane.showMessageDialog(null, "Cannot create temp file. Weird.");
|
||||
MsfguiApp.showMessage(null, "Cannot create temp file. Weird.");
|
||||
}
|
||||
fileIcon = tempIcon;
|
||||
tempFile.delete();
|
||||
|
@ -167,7 +167,7 @@ public class MeterpFileBrowser extends MsfFrame {
|
|||
try{
|
||||
rpcConn.execute("session.meterpreter_run_single", session.get("id"), cmd);
|
||||
} catch (Exception ex) {
|
||||
JOptionPane.showMessageDialog(this, ex);
|
||||
MsfguiApp.showMessage(this, ex);
|
||||
}
|
||||
}
|
||||
/** Handles click events, like popup menu and double-click navigation */
|
||||
|
@ -221,7 +221,7 @@ public class MeterpFileBrowser extends MsfFrame {
|
|||
try {
|
||||
Map received = (Map) rpcConn.execute("session.meterpreter_read", session.get("id"));
|
||||
if (! received.get("encoding").equals("base64")) {
|
||||
JOptionPane.showMessageDialog(null, "uhoh. encoding changed. Time to update msfgui?");
|
||||
MsfguiApp.showMessage(null, "uhoh. encoding changed. Time to update msfgui?");
|
||||
return;
|
||||
}
|
||||
byte[] decodedBytes = Base64.decode(received.get("data").toString());
|
||||
|
@ -264,7 +264,7 @@ public class MeterpFileBrowser extends MsfFrame {
|
|||
ex.printStackTrace();
|
||||
if(ex.getMessage().equals("unknown session"))
|
||||
readTimer.stop();
|
||||
JOptionPane.showMessageDialog(null, ex);
|
||||
MsfguiApp.showMessage(null, ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -516,7 +516,7 @@ public class MeterpFileBrowser extends MsfFrame {
|
|||
DraggableTabbedPane.show(interactPane);
|
||||
}catch (NullPointerException nex){//cancelled
|
||||
}catch (Exception ex){
|
||||
JOptionPane.showMessageDialog(null, ex);
|
||||
MsfguiApp.showMessage(null, ex);
|
||||
}
|
||||
}//GEN-LAST:event_recSearchDownloadButtonActionPerformed
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@ import javax.swing.JComboBox;
|
|||
import javax.swing.JComponent;
|
||||
import javax.swing.JFormattedTextField;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
|
@ -193,7 +192,7 @@ public abstract class ModuleInfoWindow extends MsfFrame {
|
|||
}
|
||||
}
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(rootPane, ex);
|
||||
MsfguiApp.showMessage(rootPane, ex);
|
||||
}
|
||||
updateSizes(this);
|
||||
}
|
||||
|
@ -279,7 +278,7 @@ public abstract class ModuleInfoWindow extends MsfFrame {
|
|||
} else { // Non-console; just fire away
|
||||
Map info = (Map) rpcConn.execute("module.execute",moduleType, fullName,hash);
|
||||
if (!info.get("result").equals("success"))
|
||||
JOptionPane.showMessageDialog(rootPane, info);
|
||||
MsfguiApp.showMessage(rootPane, info);
|
||||
}
|
||||
MsfguiApp.addRecentModule(java.util.Arrays.asList(new Object[]{moduleType, fullName, hash}), rpcConn, parentFrame);
|
||||
}
|
||||
|
|
|
@ -15,7 +15,6 @@ import javax.swing.GroupLayout.SequentialGroup;
|
|||
import javax.swing.JCheckBox;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JRadioButton;
|
||||
import javax.swing.JTextField;
|
||||
import javax.swing.event.TreeSelectionEvent;
|
||||
|
@ -126,7 +125,7 @@ public class ModulePopup extends ModuleInfoWindow implements TreeSelectionListen
|
|||
//Targets
|
||||
Map targetsMap = (Map) info.get("targets");
|
||||
if(targetsMap == null){
|
||||
JOptionPane.showMessageDialog(this, "No Targets. ??");
|
||||
MsfguiApp.showMessage(this, "No Targets. ??");
|
||||
}else{
|
||||
String defaultTarget="";
|
||||
if(info.get("default_target") != null)
|
||||
|
@ -154,7 +153,7 @@ public class ModulePopup extends ModuleInfoWindow implements TreeSelectionListen
|
|||
showOptions();
|
||||
}
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(rootPane, ex);
|
||||
MsfguiApp.showMessage(rootPane, ex);
|
||||
}
|
||||
reGroup();
|
||||
updateSizes(mainPanel);
|
||||
|
@ -213,7 +212,7 @@ public class ModulePopup extends ModuleInfoWindow implements TreeSelectionListen
|
|||
payloadTree.setRootVisible(false);
|
||||
payloadTree.revalidate();
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(rootPane, ex);
|
||||
MsfguiApp.showMessage(rootPane, ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -235,7 +234,7 @@ public class ModulePopup extends ModuleInfoWindow implements TreeSelectionListen
|
|||
//Add exploit only options
|
||||
if(moduleType.equals("exploit")){
|
||||
if(payload.length() <= 0){
|
||||
JOptionPane.showMessageDialog(rootPane, "You must select a payload");
|
||||
MsfguiApp.showMessage(rootPane, "You must select a payload");
|
||||
return;
|
||||
}
|
||||
hash.put("PAYLOAD",payload.toString());
|
||||
|
@ -249,7 +248,7 @@ public class ModulePopup extends ModuleInfoWindow implements TreeSelectionListen
|
|||
this.setVisible(false);
|
||||
this.dispose();
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(rootPane, ex);
|
||||
MsfguiApp.showMessage(rootPane, ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,6 @@ import java.awt.Component;
|
|||
import java.awt.HeadlessException;
|
||||
import java.util.Map;
|
||||
import javax.swing.JComponent;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.UIManager;
|
||||
import javax.swing.UIManager.LookAndFeelInfo;
|
||||
import javax.swing.plaf.ColorUIResource;
|
||||
|
@ -72,7 +71,7 @@ public class MsfFrame extends javax.swing.JFrame{
|
|||
props.put("LnF", newLnF);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
JOptionPane.showMessageDialog(null, e);
|
||||
MsfguiApp.showMessage(null, e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -40,6 +40,7 @@ public class MsfguiApp extends SingleFrameApplication {
|
|||
public static String workspace = "default";
|
||||
public static final String confFilename = System.getProperty("user.home")+File.separatorChar+".msf3"+File.separatorChar+"msfgui";
|
||||
public static MainFrame mainFrame;
|
||||
public static boolean shuttingDown = false;
|
||||
|
||||
static{ //get saved properties file
|
||||
Map props;
|
||||
|
@ -60,6 +61,10 @@ public class MsfguiApp extends SingleFrameApplication {
|
|||
}
|
||||
});
|
||||
}
|
||||
public static void showMessage(java.awt.Component parent, Object message){
|
||||
if(!shuttingDown)
|
||||
JOptionPane.showMessageDialog(parent, message);
|
||||
}
|
||||
|
||||
/**
|
||||
* Saves the properties node as an XML file specified by confFilename
|
||||
|
@ -257,7 +262,7 @@ public class MsfguiApp extends SingleFrameApplication {
|
|||
temp.delete();
|
||||
return path;
|
||||
}catch(IOException ex){
|
||||
JOptionPane.showMessageDialog(null, "Cannot create temp file. This is a bad and unexpected error. What is wrong with your system?!");
|
||||
MsfguiApp.showMessage(null, "Cannot create temp file. This is a bad and unexpected error. What is wrong with your system?!");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@ -270,7 +275,7 @@ public class MsfguiApp extends SingleFrameApplication {
|
|||
temp.delete();
|
||||
return path;
|
||||
}catch(IOException ex){
|
||||
JOptionPane.showMessageDialog(null, "Cannot create temp file. This is a bad and unexpected error. What is wrong with your system?!");
|
||||
MsfguiApp.showMessage(null, "Cannot create temp file. This is a bad and unexpected error. What is wrong with your system?!");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package msfgui;
|
|||
import java.io.File;
|
||||
import java.util.Map;
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
/**
|
||||
|
@ -44,7 +43,7 @@ public class OpenConnectionDialog extends javax.swing.JDialog {
|
|||
*/
|
||||
public static RpcConnection getConnection(MainFrame mainframe) {
|
||||
if(mainframe.rpcConn != null){
|
||||
JOptionPane.showMessageDialog(mainframe.getFrame(), "You are already connected!\n"
|
||||
MsfguiApp.showMessage(mainframe.getFrame(), "You are already connected!\n"
|
||||
+ "Exit before making a new connection.");
|
||||
throw new RuntimeException("Already connected");
|
||||
}
|
||||
|
@ -58,8 +57,9 @@ public class OpenConnectionDialog extends javax.swing.JDialog {
|
|||
boolean ssl = Boolean.parseBoolean(info.get("ssl").toString());
|
||||
return new RpcConnection(username, password.toCharArray(), host, port, ssl);
|
||||
} catch (MsfException mex) {
|
||||
if(mex.getMessage().contains("Authentication Error"))
|
||||
System.err.println("Error authenticating; wrong saved credentials.");
|
||||
if(mex.getMessage().toLowerCase().contains("authentication error"))
|
||||
mainframe.statusAnimationLabel.setText("Error authenticating; msfrpcd is running "
|
||||
+"but you did not enter the right credentials.");
|
||||
} catch (NullPointerException nex) {//generated when attributes dont exist.
|
||||
}
|
||||
//Darn. open the gui anyway
|
||||
|
@ -331,7 +331,7 @@ public class OpenConnectionDialog extends javax.swing.JDialog {
|
|||
return;
|
||||
MsfguiApp.getPropertiesNode().put("commandPrefix",
|
||||
MsfguiApp.fileChooser.getCurrentDirectory().getPath()+File.separator);
|
||||
JOptionPane.showMessageDialog(this, "Will now try running \n"
|
||||
MsfguiApp.showMessage(this, "Will now try running \n"
|
||||
+MsfguiApp.getPropertiesNode().get("commandPrefix")+"msfrpcd\n"
|
||||
+"and "+ MsfguiApp.getPropertiesNode().get("commandPrefix")+"ruby /msf3/msfrpcd\n"
|
||||
+ "when starting new daemon. Note: for the second to work on Windows,\n"
|
||||
|
|
|
@ -13,7 +13,6 @@ import javax.swing.GroupLayout;
|
|||
import javax.swing.GroupLayout.ParallelGroup;
|
||||
import javax.swing.GroupLayout.SequentialGroup;
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.JOptionPane;
|
||||
|
||||
/**
|
||||
* Popup for generating payloads and starting handlers.
|
||||
|
@ -533,9 +532,9 @@ public class PayloadPopup extends ModuleInfoWindow {
|
|||
}
|
||||
outputPane.append("\n\nruby\n"+rubyHex);
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(this, ex);
|
||||
MsfguiApp.showMessage(this, ex);
|
||||
} catch (IOException ex) {
|
||||
JOptionPane.showMessageDialog(this, ex);
|
||||
MsfguiApp.showMessage(this, ex);
|
||||
}
|
||||
}//GEN-LAST:event_generateButtonActionPerformed
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@ package msfgui;
|
|||
|
||||
import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
import javax.swing.JOptionPane;
|
||||
|
||||
/**
|
||||
* Convenient handler for showing popup windows from mouse clicks
|
||||
|
@ -22,7 +21,7 @@ public abstract class PopupMouseListener extends MouseAdapter{
|
|||
if(e.getClickCount() == 2)
|
||||
doubleClicked(e);
|
||||
}catch(MsfException xre){
|
||||
JOptionPane.showMessageDialog(null, "action failed " + xre);
|
||||
MsfguiApp.showMessage(null, "action failed " + xre);
|
||||
}
|
||||
}
|
||||
public void doubleClicked (MouseEvent e) throws MsfException{//empty by default
|
||||
|
|
|
@ -8,7 +8,6 @@ import java.awt.event.FocusEvent;
|
|||
import java.awt.event.FocusListener;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.Timer;
|
||||
import javax.swing.table.DefaultTableModel;
|
||||
|
||||
|
@ -81,7 +80,7 @@ public class ProcessList extends MsfFrame {
|
|||
try {
|
||||
Map received = (Map) rpcConn.execute("session.meterpreter_read", session.get("id"));
|
||||
if (!received.get("encoding").equals("base64")) {
|
||||
JOptionPane.showMessageDialog(null, "uhoh. encoding changed. Time to update msfgui?");
|
||||
MsfguiApp.showMessage(null, "uhoh. encoding changed. Time to update msfgui?");
|
||||
return;
|
||||
}
|
||||
byte[] decodedBytes = Base64.decode(received.get("data").toString());
|
||||
|
@ -108,7 +107,7 @@ public class ProcessList extends MsfFrame {
|
|||
ex.printStackTrace();
|
||||
if (ex.getMessage().equals("unknown session"))
|
||||
readTimer.stop();
|
||||
JOptionPane.showMessageDialog(null, ex.getMessage());
|
||||
MsfguiApp.showMessage(null, ex.getMessage());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -120,7 +119,7 @@ public class ProcessList extends MsfFrame {
|
|||
try {
|
||||
rpcConn.execute("session.meterpreter_run_single", session.get("id"),cmd);
|
||||
} catch (Exception ex) {
|
||||
JOptionPane.showMessageDialog(this, ex);
|
||||
MsfguiApp.showMessage(this, ex);
|
||||
if (ex.getMessage().equals("unknown session"))
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -3,7 +3,6 @@ package msfgui;
|
|||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.Map;
|
||||
import javax.swing.JOptionPane;
|
||||
|
||||
/**
|
||||
* Provides an ActionListener for running a meterpreter script on each selected session. Each time
|
||||
|
@ -34,7 +33,7 @@ public class RpcAction implements ActionListener {
|
|||
action(session);
|
||||
}catch(Exception ex){
|
||||
if(!ex.getMessage().equals("cancelled")){
|
||||
JOptionPane.showMessageDialog(null, "Error in RPC call: "+ex);
|
||||
MsfguiApp.showMessage(null, "Error in RPC call: "+ex);
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,7 +20,6 @@ import java.util.Random;
|
|||
import javax.net.ssl.SSLContext;
|
||||
import javax.net.ssl.TrustManager;
|
||||
import javax.net.ssl.X509TrustManager;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.dom.DOMSource;
|
||||
|
@ -377,7 +376,7 @@ public class RpcConnection {
|
|||
/** Attempts to start msfrpcd and connect to it.*/
|
||||
public static Task startRpcConn(final MainFrame mainFrame){
|
||||
if(mainFrame.rpcConn != null){
|
||||
JOptionPane.showMessageDialog(mainFrame.getFrame(), "You are already connected!\n"
|
||||
MsfguiApp.showMessage(mainFrame.getFrame(), "You are already connected!\n"
|
||||
+ "Exit before making a new connection.");
|
||||
throw new RuntimeException("Already connected");
|
||||
}
|
||||
|
@ -420,6 +419,11 @@ public class RpcConnection {
|
|||
connected = true;
|
||||
break;
|
||||
} catch (MsfException mex) {
|
||||
if(mex.getMessage().toLowerCase().contains("authentication error")){
|
||||
mex.printStackTrace();
|
||||
setMessage("Cannot connect to started msfrpcd.");
|
||||
throw mex;
|
||||
}
|
||||
}
|
||||
try {
|
||||
Thread.sleep(200); //Wait for msfrpcd to be ready
|
||||
|
|
|
@ -8,7 +8,6 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import javax.swing.DefaultListModel;
|
||||
import javax.swing.JOptionPane;
|
||||
|
||||
/**
|
||||
* Window for searching for modules by name or details
|
||||
|
@ -269,7 +268,7 @@ public class SearchWindow extends MsfFrame {
|
|||
mod.addElement(modInfo[1]+" - "+Rank.toString(info.get("rank")));
|
||||
}
|
||||
} catch (MsfException ex) {
|
||||
JOptionPane.showMessageDialog(rootPane, ex);
|
||||
MsfguiApp.showMessage(rootPane, ex);
|
||||
}
|
||||
}
|
||||
}//GEN-LAST:event_searchButtonActionPerformed
|
||||
|
|
|
@ -6,7 +6,6 @@ import java.net.DatagramSocket;
|
|||
import java.net.SocketException;
|
||||
import java.util.Map;
|
||||
import javax.swing.ImageIcon;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.SwingWorker;
|
||||
|
||||
/**
|
||||
|
@ -169,11 +168,11 @@ public class WebcamFrame extends MsfFrame {
|
|||
};
|
||||
sw.execute();
|
||||
} catch(NumberFormatException nex){
|
||||
JOptionPane.showMessageDialog(this, "Please enter a valid delay interval between frames!");
|
||||
MsfguiApp.showMessage(this, "Please enter a valid delay interval between frames!");
|
||||
} catch(MsfException mex) {
|
||||
JOptionPane.showMessageDialog(this, mex);
|
||||
MsfguiApp.showMessage(this, mex);
|
||||
} catch (SocketException sox) {
|
||||
JOptionPane.showMessageDialog(this, sox);
|
||||
MsfguiApp.showMessage(this, sox);
|
||||
}
|
||||
}//GEN-LAST:event_startButtonActionPerformed
|
||||
|
||||
|
|
Loading…
Reference in New Issue