網(wǎng)絡(luò)安全實(shí)驗(yàn)報(bào)告
姓名: : 楊瑞春
班級(jí): : 自動(dòng)化 86
學(xué)號(hào) :08045009
實(shí)驗(yàn)一: 網(wǎng)絡(luò)命令操作與網(wǎng)絡(luò)協(xié)議分析 一.實(shí)驗(yàn)?zāi)康? 1. 熟悉網(wǎng)絡(luò)基本命令的操作與功能。
2. 熟練使用網(wǎng)絡(luò)協(xié)議分析軟件 ethereal 分析應(yīng)用協(xié)議。
二.實(shí)驗(yàn)步驟: 1. 網(wǎng)絡(luò)命令: ping tracert netstat ipconfig telnet netcat Arp route nslookup Ssh 2. 協(xié)議分析軟件:ethereal 的主要功能:設(shè)置流量過(guò)濾條件,分析網(wǎng)絡(luò)數(shù)據(jù)包,流重組功能,協(xié)議分析。
三.實(shí)驗(yàn)任務(wù): 1.跟蹤某一網(wǎng)站如 google 的路由路徑
2.查瞧本機(jī)的 MAC 地址,ip 地址 輸入 ipconfig /all 找見(jiàn)本地連接、 Description 、 、 、、 、 : SiS 900-Based PCI Fast Ethernet Adapte Physical Address、、 、 : 00-13-8F-07-3A-57 DHCP Enabled、 、 、、 、 : No
IP Address、 、 、 、、 、 : 192、168、1、5 Subnet Mask 、 、 、、 、 : 255、255、255、0 Default Gateway 、、 、 : 192、168、1、1 DNS Servers 、 、 、、 、 : 61、128、128、67
192、168、1、1 Default Gateway 、、 、 : 192、168、1、1 這項(xiàng)就是網(wǎng)關(guān)、也就就是路由器 IP Physical Address、、 、 : 00-13-8F-07-3A-57 這項(xiàng)就就是 MAC 地址了、
3.telnet 到 linux 服務(wù)器,執(zhí)行指定的命令
4、ssh 連接到 linux 服務(wù)器,執(zhí)行指定的命令
5、nc 應(yīng)用:telnet,綁定程序(cmd,shell 等),掃描,連接等。
6、選擇任意一種應(yīng)用層協(xié)議如,qq 等,利用 ethereal 對(duì)該協(xié)議進(jìn)行分析。實(shí)驗(yàn)報(bào)告要求有 ethereal 捕獲的網(wǎng)絡(luò)流量與數(shù)據(jù)包協(xié)議解析的屏幕截圖。
7 分析 honeynet challenge dataset 的真實(shí)攻擊網(wǎng)絡(luò)流量 利用 ethereal 捕獲的網(wǎng)絡(luò)流量如下圖所示:
分析:從捕獲的網(wǎng)絡(luò)流量可以發(fā)現(xiàn),有許多的SYN信號(hào),但就是TCK信號(hào)很少,因此可以認(rèn)為三次握手沒(méi)有建立,連接失敗。
實(shí)驗(yàn)二: 黑客攻擊技術(shù)實(shí)驗(yàn) 一.實(shí)驗(yàn)要求: 1. 掌握典型攻擊技術(shù)原理 2. 熟悉典型攻擊軟件的功能及操作 3. 分析黑客攻擊軟件執(zhí)行輸出結(jié)果 二.實(shí)驗(yàn)內(nèi)容: 1. namp 2. nessus 3. craft network packet: hping 4. crack password: john the ripper 5. web attack: nikto 6. google hacking tools 三.實(shí)驗(yàn)任務(wù) 1 利用 winnmap 掃描功能,給出掃描報(bào)告及分析
2 nessus 應(yīng)用,給出漏洞掃描報(bào)告
設(shè)置掃描策略
添加新掃描
掃描結(jié)果
掃描報(bào)告:
3、執(zhí)行 nikto 對(duì) web 服務(wù)器進(jìn)行漏洞掃描。
4、john 應(yīng)用及配置 在 run 目錄下運(yùn)行 john-386 --wordlist=password、lst newxjtu、txt,對(duì) newxjtu、txt中內(nèi)容解密,會(huì)生成一個(gè)、pot 的文件,對(duì)同一密文只能解密一次,若刪除、pot 文件,可以再次解密。
破解后生成的明文為$LM$9eceeb689e046fcd:NEWXJTU $LM$aad3b435b51404ee:
5、google hacking tools 應(yīng)用 打開(kāi) Google Hacking,在網(wǎng)站輸入框中輸入,點(diǎn)擊查詢網(wǎng)站詳情,可以在隨后彈出的網(wǎng)頁(yè)上查瞧交大網(wǎng)站的詳細(xì)信息,包括站點(diǎn)創(chuàng)建時(shí)間,IP 地址,IP 所在地,WEB 服務(wù)器等信息。
實(shí)驗(yàn)三: 網(wǎng)絡(luò)安全技術(shù)實(shí)驗(yàn) 一.實(shí)驗(yàn)要求: 1. 掌握防火墻,VPN,入侵檢測(cè)系統(tǒng)等安全技術(shù)的基本原理與實(shí)現(xiàn)過(guò)程 2. 熟悉 IPSec、SSL、Kerberos、PGP 中的安全認(rèn)證協(xié)議關(guān)鍵技術(shù) 3. 熟練使用 IPSec、SSL、Kerberos、PGP 等安全工具 二.實(shí)驗(yàn)內(nèi)容: 1. 防火墻 2. VPN 3. IPSec 4. SSL 5. Kerberos 6. PGP 7. Snort 三.實(shí)驗(yàn)任務(wù): 1、防火墻:利用個(gè)人防火墻軟件,定義防火墻規(guī)則,允許或就是禁止某類(lèi)網(wǎng)絡(luò)流量的訪問(wèn)。
2 、IPSec:windows 自帶的 IPSec 服務(wù)配置及使用。搭建一個(gè) VPN,實(shí)現(xiàn)隧道模式,傳輸模式等功能。
(1)、啟用 xp 的遠(yuǎn)程訪問(wèn)組件,該組件默認(rèn)不啟用。打開(kāi)服務(wù) services、msc,找到 Routing and
Remote Access 服務(wù),設(shè)置啟動(dòng)類(lèi)型為自動(dòng),并啟動(dòng)服務(wù)。
(2)、雙擊打開(kāi)屬性,勾選“虛擬專(zhuān)用網(wǎng)”下的復(fù)選框。
打開(kāi)“用戶頁(yè)”,選擇允許遠(yuǎn)程撥入的用戶,或者新建用戶。
打開(kāi)網(wǎng)絡(luò)頁(yè),確保計(jì)算機(jī)上已經(jīng)安裝了 IPX/SPX 協(xié)議。服務(wù)器上設(shè)置完成。
(3)、打開(kāi)客戶機(jī),打開(kāi)網(wǎng)上鄰居,單擊創(chuàng)建一個(gè)新的連接。點(diǎn)擊“下一步” 單擊“連接到我的工作場(chǎng)所的網(wǎng)絡(luò)”
單擊“虛擬專(zhuān)用網(wǎng)絡(luò)連接”
輸入公司名,單擊下一步
輸入 VPN 服務(wù)器的 IP 地址,
單擊完成客戶機(jī)創(chuàng)建連接完畢。
(5)、打開(kāi)剛剛創(chuàng)建好的連接,輸入允許介入的用戶名與密碼,單擊“連接”
網(wǎng)絡(luò)連接后,客戶機(jī)成功接入 XP VPN 服務(wù)器 3、SSL:openSSL 配置及使用 4. Kerberos:windows 實(shí)現(xiàn)的 kerberos 認(rèn)證服務(wù)器配置及使用 5. PGP:GNUpgp
6、Snort:定義變量,配置規(guī)則,定義新的規(guī)則,學(xué)習(xí)攻擊檢測(cè)規(guī)則及報(bào)警分析 在使用 snort 之前請(qǐng)先安裝 wireshark,因?yàn)闀?huì)用到其中的 winpcap: 1、將 snort 安裝在 C 盤(pán)根目錄下。
2、安裝完成后先把 rules、rar 解壓,將里面的文件全部直接放在 snort\rules\下 3、將 snort、conf 拷貝到 bin 目錄下 4、在 cmd 中執(zhí)行 snort 的命令
Snort 掃描到的端口
查瞧 snort、conf
實(shí)驗(yàn)四: 網(wǎng)絡(luò)安全軟件開(kāi)發(fā): 網(wǎng)絡(luò)掃描器 一.實(shí)驗(yàn)?zāi)康? 1、熟悉網(wǎng)絡(luò)掃描器實(shí)現(xiàn)的關(guān)鍵技術(shù) 2、熟練運(yùn)用 C#,java 開(kāi)發(fā)網(wǎng)絡(luò)應(yīng)用程序 3、熟悉網(wǎng)絡(luò)協(xié)議字段含義及結(jié)構(gòu) 二.實(shí)驗(yàn)內(nèi)容: 1、網(wǎng)絡(luò)掃描器實(shí)現(xiàn)基本的地址掃描,端口掃描,TCP/UDP 掃描,實(shí)現(xiàn)多線程掃描。
2、圖形化界面的網(wǎng)絡(luò)掃描器軟件 3、提交源代碼、可執(zhí)行程序及代碼注釋文件及執(zhí)行結(jié)果截圖。
三.實(shí)驗(yàn)分析:
多線程:電腦上有322個(gè)端口。如果只啟動(dòng)一個(gè)線程的話322個(gè)端口需要的時(shí)間可以用小時(shí)計(jì)算。解決這個(gè)問(wèn)題需要用到多線程原理。多線程實(shí)現(xiàn)可通過(guò)繼承 Thread 類(lèi)或者實(shí)現(xiàn) Runnable接口來(lái)達(dá)到。
主機(jī)端口掃描:與目標(biāo)主機(jī)創(chuàng)建 TCP 連接,如果成功則說(shuō)明端口監(jiān)聽(tīng)中,同事對(duì)正在監(jiān)聽(tīng)的端口做識(shí)別操作!默認(rèn)按照常用端口服務(wù)給出提示!例如 21,則提示 ftp 服務(wù)。UDP 掃描就是向目標(biāo)主機(jī)端口發(fā)送固定字符,讀取目標(biāo)主機(jī)回復(fù)內(nèi)容!
TCP 掃描原理:利用 java、net、Socket 類(lèi)建立 socket 連接,如果無(wú)法與指定的 IP 與端口建立連接,將會(huì)拋出 IOException。我們用 try-catch 對(duì)這個(gè) IOException 異常進(jìn)行捕獲,以判斷就是否成功與指定的 IP 端口建立連接。如果成功建立了連接,說(shuō)明指定 IP 的指定端口已經(jīng)開(kāi)放;如果程序拋出了一個(gè) IOException 異常被我們捕獲,則說(shuō)明指定的 IP 沒(méi)有開(kāi)放指定的端口。掃描指定端口段則就是利用循環(huán)不斷與服務(wù)器的指定端口進(jìn)行連接,供我們判斷就是否開(kāi)放。
UDP 掃描原理:這種方法使用的就是 UDP 協(xié)議。由于這個(gè)協(xié)議很簡(jiǎn)單,所以掃描變得相對(duì)比較困難。這就是由于打開(kāi)的端口對(duì)掃描探測(cè)并不發(fā)送一個(gè)確認(rèn),關(guān)閉的端口也并不需要發(fā)送一個(gè)錯(cuò)誤數(shù)據(jù)包。幸運(yùn)的就是,許多主機(jī)在您向一個(gè)未打開(kāi)的 UDP 端口發(fā)送一個(gè)數(shù)據(jù)包時(shí),會(huì)返回一個(gè) ICMP_PORT_UNREACH 錯(cuò)誤。這樣您就能發(fā)現(xiàn)哪個(gè)端口就是關(guān)閉的。UDP 與ICMP 錯(cuò)誤都不保證能到達(dá),因此這種掃描器必須還實(shí)現(xiàn)在一個(gè)包瞧上 去就是丟失的時(shí)候能重新傳輸。這種掃描方法就是很慢的,因?yàn)?RFC 對(duì) ICMP 錯(cuò)誤消息的產(chǎn)生速率做了規(guī)定。同樣,這種掃描方法需要具有 root 權(quán)限。利用 java、net、DatagramSocket 類(lèi)給指導(dǎo) IP 發(fā)送DatagramPacket 數(shù)據(jù)包,如果捕獲到 java、net、PortUnreachableException 異常,說(shuō)明對(duì)方主機(jī)返回了ICMP_PORT_UNREACH的錯(cuò)誤,說(shuō)明端口關(guān)閉,否則如果在指定等待時(shí)間內(nèi)沒(méi)有得到回復(fù),則捕獲到 java、net、SocketTimeoutException 連接超時(shí)異常,說(shuō)明端口就是開(kāi)放的。
斷 判斷 IP 地址與端口合法性:在得到端口與建立 socket 之前一定要判斷 IP 地址與端口的合法性,因?yàn)槎丝诘姆秶褪窃?1~65535,如果我們?nèi)ソ⒎秶舛丝诘倪B接就就是沒(méi)必要的,而且就是不可行的。IP 地址表示成 XX、XX、XX、XX 格式,XX 范圍在 0~255 之間,在這之外就是不合法的。
圖形化界面(GUI) 設(shè)計(jì):主要用到了 java、awt 提供的與圖形界面相關(guān)的類(lèi)。為了使界面更美觀使用了 swing 組件。
socket 中的 close 方法:不需要一個(gè) socket 的時(shí)候應(yīng)關(guān)閉它,因?yàn)?socket 就是一種有限的系統(tǒng)資源。關(guān)閉 socket 將釋放有關(guān)的資源,并允許綁定在此 socket 上的端口被重新使用。Socket被關(guān)閉之后就不能再向它收發(fā)數(shù)據(jù) UDP 缺陷說(shuō)明:開(kāi)放的 UDP 端口并不需要送回 ACK 包,而關(guān)閉的端口也不要求送回錯(cuò)誤包(而本實(shí)驗(yàn)基于的原理就就是那些主機(jī)在關(guān)閉的UDP端口會(huì)回送ICMP Port Unreachable錯(cuò)誤,因此有很大的幾率誤判,由于時(shí)間原因與自身知識(shí)的局限不能想到更好的方法),所以利用UDP 包進(jìn)行掃描非常困難。UDP 包與 ICMP 包都就是不可靠的,速度慢(差錯(cuò)報(bào)文產(chǎn)生的速度有限制),并且需要 root 權(quán)限才能讀取 ICMP 消息,因此使用的局限性好大。
四.實(shí)驗(yàn)結(jié)果: 1、 初始界面:
2 、對(duì)站點(diǎn) 127、0、0、1 進(jìn)行 TCP 掃描:
3 、對(duì)站點(diǎn) 127、0、0、1 進(jìn)行 UDP 掃描:
實(shí)驗(yàn)源代碼: /*基于多線程端口掃描程序源代碼*/ import java、awt、Color;
//類(lèi)的調(diào)用 import java、awt、Container; import java、awt、Label; import java、awt、TextArea; import java、awt、event、ActionEvent; import java、awt、event、ActionListener; import java、awt、event、WindowAdapter; import java、awt、event、WindowEvent; import java、io、IOException; import java、net、InetAddress; import java、net、InetSocketAddress; import java、net、Socket; import java、net、SocketAddress; import java、net、DatagramPacket; import java、net、DatagramSocket; import java、net、UnknownHostException; import javax、swing、JButton; import javax、swing、JDialog; import javax、swing、JFrame; import javax、swing、JTextField; public class Scanner implements ActionListener{
// 創(chuàng)建主窗口
public static JFrame mainFrame = new JFrame();
public static Label labelIP = new Label("主機(jī) IP");
public static Label labelPortStart = new Label("起始端口:");
public static Label labelPortEnd = new Label("結(jié)束端口:");
public static Label labelThread = new Label("線程數(shù):");
public static Label labelResult = new Label("掃描結(jié)果:");
public static Label State = new Label("掃描狀態(tài):");
public static Label Scanning = new Label("未開(kāi)始掃描");
public
static JTextField hostName = new JTextField("172、22、65、10");
public static JTextField PortStart = new JTextField("0");
public static JTextField PortEnd = new JTextField("100");
public static JTextField ThreadNum = new JTextField("10");
// 文本區(qū)域,顯示掃描結(jié)果
public static TextArea Result = new TextArea();
public static Label DLGINFO = new Label("");
public static JButton Start = new JButton("TCP 掃描");
public static JButton Start2 = new JButton("UDP 掃描");
public static JButton Exit = new JButton("退出");
//
錯(cuò)誤提示對(duì)話框
public static JDialog DLGError = new JDialog(mainFrame, "錯(cuò)誤");
public static JButton OK = new JButton("確定");
public Scanner(){//GUI 界面
// 設(shè)置主窗體名稱(chēng)
mainFrame、setTitle("多線程端口掃描器");
// 設(shè)置主窗體位置與大小
mainFrame、setBounds(180, 200, 550, 300);
mainFrame、addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System、exit(0);
}
});
// 設(shè)置錯(cuò)誤提示框
Container dPanel = DLGError、getContentPane();
dPanel、setLayout(null);
dPanel、add(DLGINFO);
dPanel、add(OK);
dPanel、setBackground(new Color(153,255,204));
OK、setActionCommand("ok");
OK、addActionListener(this);
// 在主窗體中添加其她組件
mainFrame、setLayout(null);
mainFrame、setResizable(false);
mainFrame、add(Start);
mainFrame、add(Start2);
mainFrame、add(Exit);
mainFrame、add(labelIP);
mainFrame、add(hostName);
mainFrame、add(labelPortStart);
mainFrame、add(labelPortEnd);
mainFrame、add(PortStart);
mainFrame、add(PortEnd);
mainFrame、add(labelThread);
mainFrame、add(ThreadNum);
mainFrame、add(labelResult);
mainFrame、add(Result);
mainFrame、add(State);
mainFrame、add(Scanning);
// 設(shè)置掃描按鈕與退出按鈕
Start、setBounds(350, 232, 100, 30);
Start、setActionCommand("Start");
Start、addActionListener(this);
Start、setBackground(new Color(153,255,204));
Start2、setBackground(new Color(153,255,204));
Start2、setBounds(250, 232, 100, 30);
Start2、setActionCommand("Start2");
Start2、addActionListener(this);
Exit、setBounds(475, 232, 60, 30);
Exit、setActionCommand("Exit");
Exit、addActionListener(this);
Exit、setBackground(new Color(153,255,204));
labelIP、setBounds(17, 13, 50, 20);
hostName、setBounds(67, 10, 92, 25);
hostName、setHorizontalAlignment(JTextField、CENTER);
labelPortStart、setBounds(162, 13, 60, 20);
PortStart、setBounds(227, 10, 45, 25);
PortStart、setHorizontalAlignment(JTextField、CENTER);
labelPortEnd、setBounds(292, 13, 60, 20);
PortEnd、setBounds(357, 10, 45, 25);
PortEnd、setHorizontalAlignment(JTextField、CENTER);
labelThread、setBounds(422, 13, 50, 20);
ThreadNum、setBounds(477, 10, 45, 25);
ThreadNum、setHorizontalAlignment(JTextField、CENTER);
labelResult、setBounds(1, 45, 55, 20);
Result、setBounds(1, 65, 542, 160);
Result、setEditable(false);
Result、setBackground(new Color(204,255,51));//設(shè)置顯示結(jié)果窗口顏色 RGB
State、setBounds(17, 232, 60, 30);
Scanning、setBounds(80, 232, 120, 30);
mainFrame、setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String cmd = e、getActionCommand();
//得到明明處理事件
if(cmd、equals("Start")||cmd、equals("Start2")){
//啟動(dòng)掃描線程
try {
Scan、hostAddress = InetAddress、getByName(Scanner、hostName、getText());
Scan2、hostAddress = InetAddress、getByName(Scanner、hostName、getText());
} catch (UnknownHostException e1) {
DLGError、setBounds(300, 280, 160, 110);
DLGINFO、setText("錯(cuò)誤的 IP 地址/域名");
DLGINFO、setBounds(25, 15, 100, 20);
OK、setBounds(45, 40, 60, 30);
DLGError、setVisible(true);
return ;
}
int minPort ;
int maxPort ;
int threadNum ;
// 獲取輸入數(shù)據(jù)
try {
minPort = Integer、parseInt(PortStart、getText());
maxPort = Integer、parseInt(PortEnd、getText());
threadNum = Integer、parseInt(ThreadNum、getText());
} catch (NumberFormatException e1) {
DLGError、setBounds(300, 280, 299, 120);
DLGINFO、setText("錯(cuò)誤的端口號(hào)或線程數(shù)!端口號(hào)與線程數(shù)必須為整數(shù)!");
DLGINFO、setBounds(10, 20, 280, 20);
OK、setBounds(110, 50, 60, 30);
DLGError、setVisible(true);
return;
}
// 輸入信息錯(cuò)誤處理
if((minPort < 0)||(maxPort > 65535)||(minPort > maxPort)){
DLGError、setBounds(300, 280, 295, 120);
DLGINFO、setText("最小端口必須就是 0-65535 并且小于最大端口的整數(shù)");
DLGINFO、setBounds(10, 20, 280, 20);
OK、setBounds(120, 50, 60, 30);
DLGError、setVisible(true);
return ;
}
if((threadNum > 200)|| (threadNum < 0)){
DLGError、setBounds(300, 280, 184, 120);
DLGINFO、setText("進(jìn)程數(shù)必須就是 1-200 中的整數(shù)");
DLGINFO、setBounds(10, 20, 200, 20);
OK、setBounds(55, 50, 60, 30);
DLGError、setVisible(true);
return ;
}
Result 、 append(" 正 在 掃 描 " + hostName 、 getText() + " 線 程數(shù):"+threadNum+"\n");
Scanning、setText("開(kāi)始掃描 、、、");
Result、append("開(kāi)始端口 " + minPort + " 結(jié)束端口 " + maxPort + " \n");
if(cmd、equals("Start"))//啟動(dòng) TCP 掃描線程
{
for(int i = minPort;i <= maxPort; ) {
if((i + threadNum) <= maxPort) {
new Scan(i, i + threadNum)、start();
i += threadNum;
}
else {
new Scan(i, maxPort)、start();
i += threadNum;
}
}
}
else
if(cmd、equals("Start2"))//啟動(dòng) UDP 掃描線程
{
for(int i = minPort;i <= maxPort; ) {
if((i + threadNum) <= maxPort) {
new Scan2(i, i + threadNum)、start();
i += threadNum;
}
else {
new Scan2(i, maxPort)、start();
i += threadNum;
}
}
}
try {
Thread、sleep(3000);//設(shè)置處理等待時(shí)間
} catch (InterruptedException e1) {
e1、printStackTrace();
}
Result、append("掃描完成!\n");
Scanning、setText("掃描完成!");
}
else if(cmd、equals("ok")){
DLGError、dispose();
}
else if(cmd、equals("Exit")){
System、exit(1);
}
}
public static void main(String[] args) {
new Scanner();
} } //TCP Scan class class Scan extends Thread{
int maxPort, minPort;
public static InetAddress hostAddress;
Scan(int minPort, int maxPort){
this、minPort = minPort;
this、maxPort = maxPort;
}
public void run(){
// 掃描指定端口
for(int i = minPort;i < maxPort; i++){
Scanner、Scanning、setText("正在掃描"+i+"端口");
try {
// 根據(jù)主機(jī)名與端口號(hào)創(chuàng)建套接字地址。
SocketAddress sockaddr = new InetSocketAddress(hostAddress, i);
Socket scans=new Socket();
int timeoutMs=50;
// 將此套接字連接到具有指定超時(shí)值的服務(wù)器。
scans、connect(sockaddr, timeoutMs);
// 關(guān)閉此套接字。
scans、close();
// 添加結(jié)果顯示
Scanner、Result、append("主機(jī):" + Scanner、hostName、getText() + " TCP端口:" + i);
switch(i){//通用 TCP 端口作用顯示
case 20: Scanner、Result、append("()");break;
case 21: Scanner、Result、append("()");break;
case 23: Scanner、Result、append("(TELNET)");break;
case 25: Scanner、Result、append("(SMTP)");break;
case 38: Scanner、Result、append("(RAP)");break;
case 53: Scanner、Result、append("(DNS)");break;
case 79: Scanner、Result、append("FINGER");break;
case 80: Scanner、Result、append("(HTTP)");break;
case 139: Scanner、Result、append("(netBIOS)");break;
case 110: Scanner、Result、append("(POP)");break;
case 161: Scanner、Result、append("(SNMP)");break;
case 443: Scanner、Result、append("(HTTPS)");break;
case 1433: Scanner、Result、append("(SQL)");break;
case 1521: Scanner、Result、append("(Oracle)");break;
case 3389: Scanner、Result、append("(Terminal Service)");break;
case 8000: Scanner、Result、append("(OICQ)");break;
}
Scanner、Result、append(" 開(kāi)放\n");
} catch (IOException e) {
}
}
} } //UDP Scan class class Scan2 extends Thread
{
int maxPort, minPort,port;
public static InetAddress hostAddress;
Scan2(int minPort, int maxPort)
{
this、minPort = minPort;
this、maxPort = maxPort;
} public void run()
{
for(int port=minPort;port<=maxPort;port++)
{
DatagramSocket connection = null;
byte[] myByte = hostAddress、toString()、getBytes();
String myStr = new String(myByte);
try
{ //connection = new DatagramSocket(port, InetAddress 、getByName(ipAddress));//(ipAddress, port);
connection = new DatagramSocket( );//(ipAddress, port);
//connection、setReceiveTimeout(20*1000);
connection、setSoTimeout(60*1000);
Scanner、Scanning、setText("正在掃描"+port+"端口");
connection、connect( hostAddress, port);
System、out、println(port+"連結(jié)創(chuàng)建完成、、、");
connection、send((new DatagramPacket(myByte, myByte、length)));
System、out、println(" 數(shù)據(jù)發(fā)送完成、、、");
while(true)
{
byte[] newByte = new byte[4096];
DatagramPacket dp = new DatagramPacket(newByte, 4096);
connection、receive(dp);
if (dp != null && dp、getData() != null)
{
System、out、println(dp、getLength());
System、out、println("#####");
byte[] rslt = dp、getData();
for (int i = 0;i < dp、getLength(); i++)
{ System、out、println(rslt);
}
System、out、println("#####");
}
break;
}
connection、close();
}
catch(java、net、PortUnreachableException e)//ICMP 不可達(dá)
{
System、out、println(port+"UDP 端口關(guān)閉了\n");
}
catch(java、net、SocketTimeoutException e)//連接超時(shí)
{
Scanner、Result、append(port+"UDP 端口打開(kāi)\n");
}
catch(Exception ex)
{
ex、printStackTrace();
}
} } }
推薦訪問(wèn): 網(wǎng)絡(luò)安全 實(shí)驗(yàn) 報(bào)告同志們:今天這個(gè)大會(huì),是市委全面落實(shí)黨要管黨、從嚴(yán)治黨要求的一項(xiàng)重大舉措,也是對(duì)縣市區(qū)委書(shū)記履行基層黨建工作第一責(zé)任人情況的一次集中檢閱,同時(shí)是對(duì)全市基層黨建工作的一次再部署、再落實(shí)的會(huì)議。前面,**
***年,我認(rèn)真履行領(lǐng)班子、帶隊(duì)伍、抓黨員、保穩(wěn)定的基層黨建工作思路,以學(xué)習(xí)貫徹習(xí)近平新時(shí)代中國(guó)特色社會(huì)主義思想和黨的十九大歷次全會(huì)精神為主線,以市局基層黨建工作考核細(xì)則為落腳點(diǎn),落實(shí)全面從嚴(yán)治黨主體
根據(jù)會(huì)議安排,現(xiàn)將2022年履行抓基層黨建工作職責(zé)情況報(bào)告如下:一、履職工作特色和亮點(diǎn)1 突出政治建設(shè),著力在思想認(rèn)識(shí)上提高。牢固樹(shù)立抓黨建就是抓政績(jī)的理念,以“黨建工作抓引領(lǐng)、社區(qū)治理求突破,為民服
2022年以來(lái),在**黨委的正確領(lǐng)導(dǎo)下,堅(jiān)持以習(xí)近平新時(shí)代中國(guó)特色社會(huì)主義思想為指導(dǎo),深入學(xué)習(xí)宣傳貫徹黨的二十大精神,以黨建工作為統(tǒng)領(lǐng),扎實(shí)開(kāi)展夯實(shí)“三個(gè)基本”活動(dòng),以“四化四力”行動(dòng)為抓手,聚力創(chuàng)建
各位領(lǐng)導(dǎo),同志們:根據(jù)會(huì)議安排,現(xiàn)就2022年度抓基層黨建工作情況匯報(bào)如下:一、主要做法及成效(一)強(qiáng)化政治引領(lǐng)。一是不斷強(qiáng)化理論武裝。堅(jiān)持通過(guò)黨組會(huì)、中心組學(xué)習(xí)會(huì)和“三會(huì)一課”,第一時(shí)間、第一議題學(xué)
2022年度抓基層黨建工作述職報(bào)告按照黨委工作部署,現(xiàn)將本人2022年度抓基層黨建工作情況報(bào)告如下:一、2022年度抓基層黨建工作情況(一)旗幟鮮明講政治將旗幟鮮明講政治放在全局發(fā)展首要位置,積極開(kāi)展
2022年,是我在數(shù)計(jì)系黨總支書(shū)記這個(gè)新崗位上度過(guò)的第一個(gè)完整的工作年度。回首一年來(lái)在校黨委的正確領(lǐng)導(dǎo)下,與數(shù)計(jì)系領(lǐng)導(dǎo)班子和全體師生共同走過(guò)的日子,艱辛歷歷在目,收獲溫潤(rùn)心田。作為黨總支書(shū)記,我始終牢
按照考核要求,現(xiàn)將本人一年來(lái),作為統(tǒng)戰(zhàn)部長(zhǎng)履行職責(zé)、廉潔自律等方面情況報(bào)告如下:一、著眼增強(qiáng)政治素質(zhì),不斷深化理論學(xué)習(xí)堅(jiān)持把旗幟鮮明講政治作為履職從政的第一位要求,帶領(lǐng)統(tǒng)戰(zhàn)系統(tǒng)干部堅(jiān)決擁護(hù)“兩個(gè)確立”
**年,緊緊圍繞黨工委、管委會(huì)的決策部署,全體人員團(tuán)結(jié)協(xié)作、凝心聚力,緊扣黨工委“**”基本工作思路,全力開(kāi)拓進(jìn)取,認(rèn)真履職盡責(zé),圓滿完成各項(xiàng)工作任務(wù)。一、個(gè)人思想政治狀況檸檬文苑www bgzjy
按照縣委關(guān)于開(kāi)展抓基層黨建述職評(píng)議會(huì)議的有關(guān)要求,經(jīng)請(qǐng)示縣委組織部同意,今天,我們?cè)诖苏匍_(kāi)2022年度基層黨組織書(shū)記抓基層黨建述職評(píng)議會(huì)議。1 首先,請(qǐng)**黨委書(shū)記,**同志述職。**黨委能夠主動(dòng)研究