Allow viewing connection details.
git-svn-id: file:///home/svn/framework3/trunk@10182 4d416f70-5f16-0410-b530-b9f4589650daunstable
parent
d5b31adc6d
commit
77aa35c53f
Binary file not shown.
|
@ -353,6 +353,16 @@
|
|||
<Property name="name" type="java.lang.String" value="startRpcMenuItem" noResource="true"/>
|
||||
</Properties>
|
||||
</MenuItem>
|
||||
<MenuItem class="javax.swing.JMenuItem" name="showDetailsItem">
|
||||
<Properties>
|
||||
<Property name="mnemonic" type="int" value="100"/>
|
||||
<Property name="text" type="java.lang.String" resourceKey="showDetailsItem.text"/>
|
||||
<Property name="name" type="java.lang.String" value="showDetailsItem" noResource="true"/>
|
||||
</Properties>
|
||||
<Events>
|
||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="showDetailsItemActionPerformed"/>
|
||||
</Events>
|
||||
</MenuItem>
|
||||
<MenuItem class="javax.swing.JPopupMenu$Separator" name="jSeparator1">
|
||||
<Properties>
|
||||
<Property name="name" type="java.lang.String" value="jSeparator1" noResource="true"/>
|
||||
|
|
|
@ -420,6 +420,7 @@ public class MainFrame extends FrameView {
|
|||
javax.swing.JMenu fileMenu = new javax.swing.JMenu();
|
||||
connectRpcMenuItem = new javax.swing.JMenuItem();
|
||||
startRpcMenuItem = new javax.swing.JMenuItem();
|
||||
showDetailsItem = new javax.swing.JMenuItem();
|
||||
jSeparator1 = new javax.swing.JPopupMenu.Separator();
|
||||
searchItem = new javax.swing.JMenuItem();
|
||||
changeLFMenuItem = new javax.swing.JMenuItem();
|
||||
|
@ -630,6 +631,16 @@ public class MainFrame extends FrameView {
|
|||
startRpcMenuItem.setName("startRpcMenuItem"); // NOI18N
|
||||
fileMenu.add(startRpcMenuItem);
|
||||
|
||||
showDetailsItem.setMnemonic('d');
|
||||
showDetailsItem.setText(resourceMap.getString("showDetailsItem.text")); // NOI18N
|
||||
showDetailsItem.setName("showDetailsItem"); // NOI18N
|
||||
showDetailsItem.addActionListener(new java.awt.event.ActionListener() {
|
||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
||||
showDetailsItemActionPerformed(evt);
|
||||
}
|
||||
});
|
||||
fileMenu.add(showDetailsItem);
|
||||
|
||||
jSeparator1.setName("jSeparator1"); // NOI18N
|
||||
fileMenu.add(jSeparator1);
|
||||
|
||||
|
@ -1159,6 +1170,10 @@ public class MainFrame extends FrameView {
|
|||
}
|
||||
}//GEN-LAST:event_unloadPluginItemActionPerformed
|
||||
|
||||
private void showDetailsItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_showDetailsItemActionPerformed
|
||||
JOptionPane.showMessageDialog(getFrame(), rpcConn.toString(), "Connection Details", JOptionPane.INFORMATION_MESSAGE);
|
||||
}//GEN-LAST:event_showDetailsItemActionPerformed
|
||||
|
||||
/** 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);
|
||||
|
@ -1440,6 +1455,7 @@ public class MainFrame extends FrameView {
|
|||
private javax.swing.JMenuItem searchItem;
|
||||
private javax.swing.JTable servicesTable;
|
||||
private javax.swing.JTable sessionsTable;
|
||||
private javax.swing.JMenuItem showDetailsItem;
|
||||
private javax.swing.JMenuItem socketLoggerItem;
|
||||
private javax.swing.JMenuItem soundItem;
|
||||
private javax.swing.JMenuItem startRpcMenuItem;
|
||||
|
|
|
@ -43,17 +43,22 @@ public class RpcConnection {
|
|||
private OutputStream sout; //socket output/input
|
||||
private InputStream sin;
|
||||
private final Object lockObject = new Object();//to synchronize one request at a time
|
||||
private String username, password, host;
|
||||
private int port;
|
||||
|
||||
/** Constructor sets up a connection and authenticates. */
|
||||
RpcConnection(String username, char[] password, String host, int port) throws MsfException {
|
||||
boolean haveRpcd=false;
|
||||
this.username = username;
|
||||
this.password = new String(password);
|
||||
this.host = host;
|
||||
this.port = port;
|
||||
String message = "";
|
||||
try {
|
||||
connection = new Socket(host, port);
|
||||
sout = connection.getOutputStream();
|
||||
sin = connection.getInputStream();
|
||||
Object[] params = new Object[]{username, new String(password)};
|
||||
Map results = exec("auth.login",params);
|
||||
Map results = exec("auth.login",new Object[]{username, this.password});
|
||||
rpcToken=results.get("token").toString();
|
||||
haveRpcd=results.get("result").equals("success");
|
||||
} catch (MsfException xre) {
|
||||
|
@ -65,6 +70,14 @@ public class RpcConnection {
|
|||
if(!haveRpcd)
|
||||
throw new MsfException("Error connecting. "+message);
|
||||
}
|
||||
|
||||
public String toString(){
|
||||
return "RPC connection "
|
||||
+ "\nusername: "+username
|
||||
+ "\npassword: " + password
|
||||
+ "\nhost: " + host
|
||||
+ "\nport: " + Integer.toString(port);
|
||||
}
|
||||
/** Destructor cleans up. */
|
||||
protected void finalize() throws Throwable{
|
||||
super.finalize();
|
||||
|
|
|
@ -85,3 +85,4 @@ socketLoggerItem.text=Socket logger
|
|||
otherPluginItem.text=Other
|
||||
dbCredcollectItem.text=DB credcollect
|
||||
unloadPluginItem.text=Unload plugin
|
||||
showDetailsItem.text=Show connection details
|
||||
|
|
Loading…
Reference in New Issue