Time of Update: 2018-12-07
連接埠掃描途徑:什麼是掃描器 掃描器是一種自動檢測遠程或本地主機安全性弱點的程式,通過使用掃描器你可一不留痕迹的發現遠程伺服器的各種TCP連接埠的分配及提供的服務和它們的軟體版本!這就能讓我們間接的或直觀的瞭解到遠程主機所存在的安全問題。工作原理 掃描器通過選用遠程TCP/IP不同的連接埠的服務,並記錄目標給予的回答,通過這種方法,可以搜集到很多關於目標主機的各種有用的資訊(比如:是否能用匿名登陸!是否有可寫的FTP目錄,是否能用TELNET,HTTPD是用ROOT還是nobady在跑!)掃
Time of Update: 2018-12-07
Key類中 static變數static int comparisons;類外 初始化int Key::comparisons = 0;主程式中 直接使用 可對Key::comparisons操作 1 class Key 2 { 3 int key; 4 public: 5 static int comparisons; 6 Key(int x=0); 7 int the_key() const; 8 }; 9 bool operator ==(const
Time of Update: 2018-12-07
網路通訊通常分為基於資料結構的和基於流的。HTTP協議就是後者的一個例子。 有時為了提高程式的處理速度和資料處理的方便,會使用基於資料結構的通訊(不需要對流進行解析)。但是,當需要在多平台間進行通訊時,基於資料結構的通訊,往往要十分注意以下幾個方面:[1] 位元組序[2] 變數長度[3] 記憶體對齊 在常見的系統架構中(Linux X86,Windows),非單位元組長度的變數類型,都是低位元組在前,而在某些特定系統中,如Soalris
Time of Update: 2018-12-07
if(pcap_findalldevs(&device,errbuf)==0 ) ...{ device_t=device; device_t=device_t->next; printf("網路介面卡列表: "); while(device_t) ...{ printf(" [%d]:%s
Time of Update: 2018-12-07
文章目錄 1、機器數2、真值1. 原碼2. 反碼3. 補碼同餘的概念負數模數開始證明1、機器數2、真值1. 原碼2. 反碼3. 補碼同餘的概念負數模數開始證明 本篇文章講解了電腦的原碼, 反碼和補碼. 並且進行了深入探求了為何要使用反碼和補碼, 以及更進一步的論證了為何可以用反碼, 補碼的加法計算原碼的減法. 論證部分如有不對的地方請各位牛人幫忙指正! 希望本文對大家學習電腦基礎有所協助! 一. 機器數和真值在學習原碼, 反碼和補碼之前,
Time of Update: 2018-12-07
注意:使用 new 得來的空間,必須用 delete 來釋放;使用 new [] 得來的空間,必須用 delete [] 來釋放。彼此之間不能混用。 1 #include<iostream.h> 2 #include<stdio.h> 3 4 int main(int argc, char *argv[]) 5 { 6 cout<<"按任意鍵開始分配記憶體"<<endl; 7 getchar(); 8 9
Time of Update: 2018-12-07
一.socket的一些基本結構1.32位的IP地址:struct in_addr{ unsigned long s_addr;}2.TCP/IP所在的網際通訊域使用的通訊端地址格式:struct sockaddr_in{ short int sin_family; //表示所屬地址簇,TCP/IP必須是AF_INET unsigned short int sin_port; //表示連接埠號碼 struct in_addr sin_addr;
Time of Update: 2018-12-07
#include <stdio.h>#include <signal.h>#include <unistd.h>static void sig_usr(int);int main(void){ if(signal(SIGUSR1, sig_usr) == SIG_ERR) printf("can't catch SIGUSR1\n"); if(signal(SIGUSR2, sig_usr) ==
Time of Update: 2018-12-07
00000000 *UND* 00000000 ipoque_search_ftp_tcp00000000 *UND* 00000000 ipoque_search_usenet_tcp00000000 *UND* 00000000 ipoque_search_dns00000000 *UND* 00000000 ipoque_search_filetopia_tcp00000000 *UND* 00000000
Time of Update: 2018-12-07
〇、引子 上周日下午參加了中興的筆試(詳細筆試內容見我之前的博文《中興筆試歸來總結(2012軟體類)》),其中有道題是這樣的: 找出下列程式的錯誤void Test( char *str1 ) 1 void Test( char *str1 )2 {3 char string[10];4 if( strlen(str1) <= 10 )5 {6 strcpy( string, str1 );7 }8
Time of Update: 2018-12-07
pcap_pkthdr結構 [路徑]/usr/include/pcap.h /* * Each packet in the dump file is prepended with this generic header. * This gets around the problem of different headers for different * packet interfaces. */ struct pcap_pkthdr { struct timeval
Time of Update: 2018-12-07
BIG ENDIAN:最低位地址存放高位位元組,可稱高位優先,記憶體從最低地址開始按順序存放(高數位元字先寫)。最高位位元組放最前面。LITTLE ENDIAN:最低位地址存放低位位元組,可稱低位優先,記憶體從最低地址開始按順序存放(低數位元字先寫)。最低位位元組放最前面。x86系列用Little Endian,而JAVA和網路通訊協定採用Big Endian來儲存和發送資料。 比如數字0x12345678在兩種不同位元組序CPU中的儲存順序如下所示: Big Endian 低地址 高地址
Time of Update: 2018-12-07
第二部分 資料通訊本部分 資料通訊系統 點對點或多點鏈路 討論的主題 資料轉送問題 3、資料轉送形式 4、傳輸媒體 5、編碼技術 6、資料通訊 可靠性問題 7、資料連結控制協議 效率問題 8、複用 無線通訊 9 、擴頻 第三章
Time of Update: 2018-12-07
1. 首先在伺服器上安裝ssh的伺服器端。$ sudo aptitude install openssh-server2. 啟動ssh-server。$ /etc/init.d/ssh restart3. 確認ssh-server已經正常工作。$ netstat -tlptcp6 0 0 *:ssh *:* LISTEN -看到上面這一行輸出說明ssh-server已經在運行了。4. 在用戶端通過ssh登入伺服器。假設伺服器的IP地址是192.168.0.103,登入的使用者名稱是hyx。$
Time of Update: 2018-12-07
strlen(char*)函數求的是字串的實際長度,它求得方法是從開始到遇到第一個'\0',如果你只定義沒有給它賦初值,這個結果是不定的,它會從aa首地址一直找下去,直到遇到'\0'停止。char aa[10];cout<<strlen(aa)<<endl; //結果是不定的char aa[10]={'\0'}; cout<<strlen(aa)<<endl; //結果為0char aa[10]="jun"; cout<<strlen(
Time of Update: 2018-12-07
這是網路編程的基礎,tcp的狀態轉移圖說到底就是一個狀態機器的不同狀態之間的轉換關係以及觸發這些狀態需要的條件,一共存在11個狀態,我們來逐一分析:1.CLOSED:起始點,在逾時或者串連關閉時候進入此狀態。2.LISTEN:svr端在等待串連過來時候的狀態,svr端為此要調用socket,
Time of Update: 2018-12-07
char * strtok ( char * string, const char * delimiters ); Sequentially truncate string if delimiter is found. If string is not NULL, the function scans string for the first occurrence of any character included in delimiters. If it is found, the
Time of Update: 2018-12-07
// 如果你要對b值進行修改就這樣定義void fun( int & b ){// ... }//如果你只需使用b不變數裡的值這樣定義,對於大的對象這樣定義運行速度就要快很多void fun1( const int & b ){}main(){int n = 10; fun( n ); //調用時在記憶體中要重新構造一個 fun1( n ); // 調用時直接將n的地址傳給fun1的參數b,不會在記憶體中重新構造
Time of Update: 2018-12-07
指令名稱 : chmod使用許可權 : 所有使用者使用方式 : chmod [-cfvR] [--help] [--version] mode file...說明 : Linux/Unix 的檔案存取許可權分為三級 : 檔案擁有者、群組、其他。利用 chmod 可以藉以控制檔案如何被他人所存取。mode : 許可權設定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬於同一個群體(group)者,o
Time of Update: 2018-12-07
寫出一個struct,然後sizeof,你會不會經常對結果感到奇怪?sizeof的結果往往都比你聲明的變數總長度要大,這是怎麼回事呢?講講位元組對齊吧. /******************************分割線如果體繫結構是不對齊的,A中的成員將會一個挨一個儲存,從而sizeof(a)為11。顯然對齊更浪費了空間。那麼為什麼要使用對齊呢?體繫結構的對齊和不對齊,是在時間和空間上的一個權衡。對齊節省了時間。假設一個體繫結構的字長為w,那麼它同時就假設了在這種體繫結構上對寬度為w的資料的