當前位置:首頁 » 操作系統 » linuxida

linuxida

發布時間: 2023-01-20 11:50:47

A. linux怎麼在文件里尋找字元串

可以使用vim打開文件,然後通過 vim編輯 中的 /(向後查找)或者 ?(向前查找)來查找相應的字元串。


示例:用vim打開/etc/passwd查找admin用戶名

vim /etc/passwd

打開文件後,直接輸入 /admin 回車即可查找如下圖所示:

回車執行,vim查找到後,會標識出來,如下圖所示:

B. ida動態調試為啥無法選擇windows

1、將IDA安裝目錄dbgsrv文件夾里的linux_server64拷貝到64位的linux虛擬機。
2、通過命令chmod+xlinux_server64為程序添加可執行許可權。
3、通過命令./linux_server64開啟服務端。
3、在IDA中點擊Debugger,添加RemoteLinuxDebugger。
4、點擊Debugger下的ProcessOption進行如下配置前三行都是可執行文件在linux虛擬機中的位置Hostname是虛擬機的IP,埠用默認值這時就可以開始調試了。

C. 用ida可以反匯編linux的so庫文件嗎

這個一般沒有要求。一般/lib /usr/lib 其它的要看具體情況。。。 如果你是自己編譯的應用程序,.so文件一般就在安裝目錄下的lib目錄中。

D. 如何使用ida在apk執行前動態調試其so中的函數

安卓手機用ida在apk執行前動態調試其so中的函數 方法1 1、解包對方APK,插入一個:對應SMALI: android.os.SystemClock.sleep(20000);const-wide/16 v0, 0x2710 #20秒invoke-static {v0, v(X-1)}, Landroid/os/SystemClock;->sleep(J)V這里(X-1)對應.local X。 2 另外,有的包在你要調試的那個SO裡面有簽名保護,反正你重新打了包之後會導致程序運行崩潰,這個相比JAVA修改困難些,建議你用那個簽名漏洞來打包。事實上我調試那個SO也遇到過這樣,然後打了個簽名漏洞的包嵌入的延時函數就可以了。 方法2 1) am start -D -n 包名/類名; 2) IDA pro attach 進程, 設置新線程,載入so時斷點,continue; 3) 打開ddms, 查看調試埠, jdb attach port; 4) 這個時候應該已經斷在新線程,或者載入so處了,在你感興趣的so處停下來; 5) 另外用ida 打開so,查看你感興趣的函數偏移, 加上你感興趣的so的基地址,打上斷點,continue, 就大功告成了。 注意事項 windows下ida6.1不行,linux ida 6.4可以,不知是ida的問題還是windows的問題,你可以在linux下用wine測一下。 經驗內容僅供參考,如果您需解決具體問題(尤其法律、醫學等領域),建議您詳細

E. ida是什麼意思

ida是指互動式反匯編器專業版

互動式反匯編器專業版(Interactive Disassembler Professional),人們常稱其為IDA Pro,或簡稱為IDA。是最棒的一個靜態反編譯軟體,為眾多0day世界的成員和ShellCode安全分析人士不可缺少的利器。

IDA Pro是一款互動式的,可編程的,可擴展的,多處理器的,交叉Windows或LinuxWinCEMacOS平台主機來分析程序, 被公認為最好的花錢可以買到的逆向工程利器。

分類:

從功能上看,IDA Pro共有兩個版本:標准版和高級版。這兩個版本的主要區別,在於他們支持反匯編的處理器體系結構數量不同。

快速瀏覽一下它們所支持的處理器體系結構列表,即可發現:標准版支持30多種處理器,而高級版則支持50多種處理器。高級版支持的其他體系結構包括Itanium、AMD64、MIPS、PPC和SPARC等。

F. linux里文件如何進行文件脫殼

linux很少有需要crack的軟體,所以最近總是自娛自樂。自己寫的軟體自己破著玩但是由於都是知道自己的手段,沒有什麼意思。真的希望有高手們寫些crackme for linux 。
最近看了看windows的脫殼大致的理解了脫殼的原理,之前沒有怎麼接觸脫殼,通常只是選擇沒有殼的軟體看看。在linux下的殼沒有找到幾個。只找到了一個upx的殼,在windows下是個弱殼。實際上在linux下面也是弱殼,完全可以使用"upx -d"的命令解決問題。但我總是喜歡自己手動的。呵呵....純屬於自娛自樂。
ok,開始我們的linux的upx的脫殼之旅.........
我在選擇工具的時候花了很多時間,忽然發現GDB在upx面前是那麼的蒼白無力...也終於知道為什麼有人說GDB不適合做逆向了...雖然軟體在調試器里可以正常於運行,正常下斷。但是根本無法查看反匯編的代碼.......。
無奈無奈....使用傳說中最好的工具 IDA 為此我特地簡單的學習了一下IDC腳本的使用方法...
沒有什麼資料可以參考,是一件很不愉快的事情,因為不知道能不能成功。不管了,一步一步來吧...
我用「upx -d「 脫出了原來的文件,發現文件是全的,沒有任何部分丟失,所以我相信這些文件會出現在進程空間的某個時間的某個角落,這個很大的堅定了我手動脫殼的信心(但是實際上到這篇文章的結尾我也沒有能夠在找到完整的程序文件,但我相信理論上內存空間中應該會出現完整的文件的...)。
我的加殼軟體是我上次文章中用到做外掛的mines(掃雷游戲)。先找到了upx-3.03-i386_linux 軟體 附件中我會給出的免的度這篇文章的人去尋找了。
對我們目標軟體加殼,命令如下,的確是個好用的壓縮殼軟體,直接有54%的壓縮律。
代碼:
[jun@beijihuCom mpupx]$Content$nbsp;./upx mines
Ultimate Packer for eXecutables
Copyright (C) 1996 - 2008
UPX 3.03 Markus Oberhumer, Laszlo Molnar & John Reiser Apr 27th 2008
File size Ratio Format Name
-------------------- ------ ----------- -----------
13960 -> 7556 54.13% linux/elf386 mines
Packed 1 file.
[jun@beijihuCom mpupx]$Content$nbsp;
好了,我們開始調試他了,加了殼以後,一般的調試軟體已經對他無能為力了...
實驗一下GDB 和 DDD 的效果...以及objmp
readelf還可以正常使用,(僅限於一部分功能.呵呵,不詳談了...)
代碼:
[jun@beijihuCom mpupx]$Content$nbsp;readelf -e ./mines
ELF Header:
Magic: 7f 45 4c 46 01 01 01 03 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2』s complement, little endian
Version: ; 1 (current)
OS/ABI: UNIX - Linux
ABI Version: 0
Type: EXEC (Executable file)
Machine: Intel 80386
Version: 0x1
Entry point address: 0xc02598
Start of program headers: 52 (bytes into file)
Start of section headers: 0 (bytes into file)
Flags: 0x0
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 2
Size of section headers: 40 (bytes)
Number of section headers: 0
Section header string table index: 0
There are no sections in this file.
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x000000 0x00c01000 0x00c01000 0x01d60 0x01d60 R E 0x1000
LOAD 0x0002fc 0x0804b2fc 0x0804b2fc 0x00000 0x00000 RW 0x1000
上面的輸出,我們可以發現他的入口點是0xc02598 這個入口點已經和GCC編譯出來的程序大不一樣了。實際上重「upx -d「脫出來的效果來看,原來的入口點基本上是不會改變的,也就是說我們的手動脫殼的時候軟體的入口點,載入方式都是和未加殼的軟體是一樣的...這一點又為我們的脫殼成功,增加了砝碼..
繼續....gdb 調試一下
代碼:
(gdb) b *0xc02598
Breakpoint 1 at 0xc02598
(gdb) r
Starting program: /home/jun/Crack/mpupx/mines
warning: shared library handler failed to enable breakpoint
(no debugging symbols found)
Breakpoint 1, 0x00c02598 in ?? ()
(gdb) disassemble
No function contains program counter for selected frame.
(gdb)
gdb看不反匯編代碼,暈了都不知道下一步的操作是什麼....看來是沒有什麼用了
祭起傳說中的逆向利器IDA.學西習了一下,簡單操作,我開始了調試之旅.
代碼:
[jun@beijihuCom mpupx]$Content$nbsp;idal ./mines
等到載入完成,會停在入口處,呵呵在游標在call上直接按F4,程序運行,停到了入口出
單步運行...實際上我沒有什麼辦法,不知道有什麼下好的方法下斷點,可以使這個簡單方法調試...
這邊我是這么想的,upx是壓縮殼,當他把執行權交給原目標程序的時候,必定會有一個大的跳轉,好多新手在windows脫殼,都是以這個為oep的標準的。linux應該也不會例外的...
F8單步到0xc025c8 跳到 oxc025d1 在 0xc025d3 又會跳回來。顯然是個循環。不在循環里浪費時間了。我們向下找找,下面有個retn返回。游標移到上面F4。實際上沒有什麼把握。只是蒙的,結果很好,沒有飛走.F8單步到了這里
繼續單步,retn到一個地方
不詳細分析了往下看。翻阿翻,不會這么巧吧.看見了 jmp dword ptr [edi]跳轉,這不會是傳說中的大跳吧。
不管直接F4到這里...哈哈很成功。
單步一下,跳到了這里。
不懂代碼的具體含義,但是明顯不是程序的入口...為什麼?單步....繼續
看到這里我忽然頓悟,這里是在做ld連接,不能讓他運行了,很可能是為了我們目標程序的運行進行共享庫的連接..會修改我們內存中的映像文件。這樣我們mp出來的就不是原來的干凈程序,因為我們沒有修復工具,比起windows裡面的PE修復要麻煩多了.....所以趕緊mp出來...
用來mp映像的idc腳本
代碼:
#include <idc.idc>
#define PT_LOAD 1
#define PT_DYNAMIC 2
static main(void)
{
auto ImageBase,StartImg,EndImg;//基址 08048000
auto e_phoff;
auto e_phnum,p_offset;//paddr 0xc 地址,pmemsz ox14大小,p_offset 0x4
auto i,mpfile;
ImageBase=0x08048000;
StartImg=0x08048000;
EndImg=0x0;
Message("%8x\n",Dword(ImageBase));
if (Dword(ImageBase)==0x7f454c46 || Dword(ImageBase)==0x464c457f )
{
if(mpfile=fopen("./mpfile","w+"))
{
e_phoff=ImageBase+Word(ImageBase+0x1c);
e_phnum=Word(ImageBase+0x2c);
for(i=0;i<e_phnum;i++)
{
if (Dword(e_phoff)==PT_LOAD || Dword(e_phoff)==PT_DYNAMIC)
{ p_offset=Dword(e_phoff+0x4);
StartImg=Dword(e_phoff+0xc);
EndImg=Dword(e_phoff+0xc)+Dword(e_phoff+0x14);
mp(mpfile,StartImg,EndImg,p_offset);
Message("mp LOAD%d ok.\n",i);
}
e_phoff=e_phoff+0x20;
}
fseek(mpfile,0x30,0);
fputc(0x00,mpfile);
fputc(0x00,mpfile);
fputc(0x00,mpfile);
fputc(0x00,mpfile);
fclose(mpfile);
}else Message("mp err.");
}
}
static mp(mpfile,startimg,endimg,offset)
{auto i;
auto size;
size=endimg-startimg;
fseek(mpfile,offset,0);
for ( i=0; i < size; i=i+1 )
{
fputc(Byte(startimg+i),mpfile);
}
}
改變文件的屬性,讓他可以運行。
代碼:
[jun@beijihuCom mpupx]$Content$nbsp;su
口令:
[root@beijihuCom mpupx]# chmod 755 ./mpfile
[root@beijihuCom mpupx]# ./mpfile
程序運行的很好..
總結:第一次在linux下手動脫殼,看上去文章中寫的很輕松,實際上在之前做了很多工作。包括ELF的載入等等。還有我發現如果程序的節表頭程序也能很好的運行,什麼的..
另外,我之調試的時候,實際經過很多挫折...沒有足夠的經驗嘛...不過些文章,截圖的時候都很順利..呵呵.共勉........

G. 如何構建Linux系統下U盤路由器防火牆

系統要求
作為路由器的計算機需要具有486以上的中央處理器、16MB以上的內存、軟碟機、連接區域網的網卡和連接互聯網的網路設備,該設備可以是連接XDSL的網卡,也可以是線纜數據機(Cable Modem)或普通的數據機。支持以下網卡:
3com509 Mol:3c509
3com900 Mol:3c59x
Intel Ethernet Pro 100 Mol:eepro100
3com590 Mol:3c59x
RTL8139 Mol:8139cp eller8139too
下面詳細介紹coyote Linux的安裝及配置使用的步驟:將安裝coyote Linux軟體的計算機加入區域網,如果是用ADSL/Cable數據機方式連接互聯網,需要兩塊網卡,一塊接入區域網,一塊連接ADSL/Cables設備。

步驟一:
軟體下載安裝:現在網上下載到Linux版和Windows版的製作程序,為了體現開源精神我選擇了Linux版本:
#wegt 下載安裝包
#tar vxf coyote-2.24.tar.gz;#cd coyote-2.24
#./makefloppy.sh
Coyote floppy builder script v2.9
Please choose the desired capacity for the created floppy:
1) 1.44Mb (Safest and most reliable but may lack space needed
for some options)
2) 1.68Mb (Good reliability with extra space) - recommended
3) 1.72Mb (Most space but may not work on all systems or with
all diskettes)
按照提示選擇1。
步驟二:選擇接入互聯網方式
Please select the type of Internet connection that your system uses.
1) Standard Ethernet Connection
2) PPP over Ethernet Connection
3) PPP Dialup Connection
下面系統會自動工具檢測到的網路設備,確定連接互聯網所使用的協議類型。如果是安裝了ADSL或線纜數據機,選擇2;如果是專線選擇1;如果是普通數據機撥號上網,則要使用3。以下操作是1為例。
步驟三:設置網路參數:
這個需要根據自己內部ip地址的分配情況進行設置。例如:如果內部網的ip是192.168.0.1/24,這里就要把ip設置成192.168.0.X。而其他的機子要將網關設置成這個地址
步驟四:選擇是否把coyote Linux設置為dhcp伺服器給其他的機器分配ip地址。可以根據自己的實際情況決定用還是不用。預設設置是把它配置為dhcp伺服器,IP分配地址:192.168.0.100-192.168.0.200。
步驟五:是否將coyote Linux構建「Demilitarized Zone」(DMZ)的區域。預設設置是否。最簡單的情況是直接將防火牆放置在外網和企業網路之間,所有流入企業網路的數據流量都將通過防火牆,使企業的所有客戶機及伺服器都處於防火牆的保護下。然而這種結構畢竟比較簡單,企業中有許多伺服器、客戶機等資源需要保護,不同的資源對安全強度的要求也不同。不能用對待客戶機的安全級別來對待伺服器,這樣伺服器將會很危險;同樣,也不能用對待伺服器的安全級別來對待客戶機,這樣用戶會感覺很不方便。針對不同資源提供不同安全級別的保護,可以考慮構建一個叫做「Demilitarized Zone」(DMZ)的區域。DMZ可以理解為一個不同於外網或內網的特殊網路區域。DMZ內通常放置一些不含機密信息的公用伺服器,這樣來自外網的訪問者可以訪問DMZ中的服務,但不可能接觸到存放在內網中的公司機密或私人信息等。許多防火牆產品都提供了DMZ的介面。硬體防火牆由於使用專門的硬體晶元,所以在性能和流量上有絕對的優勢。
步驟六:設置DNS伺服器選項
為區域網內計算機提供域名服務代理,加快主機名對應IP地址的查找,從而提高訪問網頁的速度,可自設主機名稱和IP地址的解析。
步驟七:選擇WEB管理語言。中文一般情況下選擇CHN 。coyote Linux支持11國家的語言
步驟八,選擇日誌伺服器的地址,日誌對於安全來說非常重要,他記錄了系統每天發生的各種各樣的事情,你可以通過他來檢查錯誤發生的原因,或者受到攻擊時攻擊者留下的痕跡。日誌主要的功能有:審計和監測。他還可以實時的監測系統狀態,監測和追蹤侵入者等等。
步驟九:系統自檢,提示輸入網卡中斷、IO是否啟用7層過濾等選項。RTL8139的pci介面的網卡,直接被支持的,IO地址和IRQ不需要設置的,直接使用會車鍵NEXT,如果你用的是ISA網卡就必須填寫。完成後會系統當前信息

步驟十:完成操作啟動Linux路由器、防火牆
按照提示加入一張1.44MB的軟盤,製作過程自動完成,大約需要250秒鍾。coyote Linux軟盤就完成了。用這張軟盤啟動一台打算作為路由器的機器,在bios里設置成軟碟機啟動。
步驟十一:遠程管理coyote Linux 路由器、防火牆
目前主要的遠程連接技術大致分為以下兩種:一種是基於瀏覽器的Web界面方式,另一種是基於命令行的方式。命令行的管理方式適合進行初始化、網卡配置等基本操作,不適合做豐富的管理功能。Web管理方式是另一種管理工具。這種方式提供了簡單的管理界面,直觀,是一種重要的管理工具,適合進行復雜的配置,連接多台伺服器,同時支持豐富的審計和日誌的功能。下面分別這介紹這兩種方法。
SSH命令行方法:
目前通過SSH的遠程管理工具在安全性上已經相當可靠,因為從目前來看,如果要對這些遠程管理方式進行攻擊,所有的可能就是在傳輸中。在傳輸中,假設所有的信息都被截下來,由於解密的工作量非常大,它依然是安全的。如果使用IDA加密演算法,用每秒鍾可以猜測10億密碼的分析機器,需要2的19次方/年才可以解密。SSH由於它本身是一種協議,所以對於異構平台之間,不存在兼容性問題,是一種跨平台的方式。在Linux客戶端下使用SSH,優點是操作更方便無須其他軟體。用戶只需要使用系統提供的默認的配置文件「/etc/ssh/ssh_config」,並且使用如下簡單的命令即可登錄:
ssh -l root 192.168.0.1
登陸後,管理即可。

H. linux下怎樣在一個文件裡面查找一個字元串

在normal模式下按下/即可進入查找模式,輸入要查找的字元串並按下回車。

Vim會跳轉到第一個匹配。按下n查找下一個,按下N查找上一個。

Vim查找支持正則表達式,例如/vim$匹配行尾的"vim"。 需要查找特殊字元需要轉義,例如/vim$匹配"vim$"。

實戰一下:

1、用vim打開要查找的文件

注意,如果沒有安裝vim,系統會提示安裝語句,復制運行即可安裝vim

I. ida pro 6.6 能用於linux軟體么

可以。目前ida pro支持linux版本。

  1. IDA PRO簡稱IDA(Interactive Disassembler) ,是一個世界頂級的互動式反匯編工具,有兩種可用版本。標准版(Standard)支持二十多種處理器。高級版(Advanced)支持50多種處理器。

  2. IDA PRO不存在任何注冊機、注冊碼或破解版,除了測試版和一個5.0 的免費版外,網路上能下載的都是包含用戶許可證的正版,因為所有的安裝包都是OEM版,所以IDA官網不提供軟體下載,並且軟體也沒有注冊的選項(可以正常使用,但這也是一種盜版侵權的行為)。

J. Linux下有什麼類似OD的軟體

od是windows上的rin3級的調試器。
linux上一般使用gcc、nasm、ida就可以了。

熱點內容
什麼電腦單機游戲好玩又免費配置低 發布:2025-07-04 22:51:27 瀏覽:417
真香配置有哪些 發布:2025-07-04 22:49:05 瀏覽:207
安卓在哪裡找游戲 發布:2025-07-04 22:15:25 瀏覽:243
路由器訪問光貓 發布:2025-07-04 22:07:47 瀏覽:898
資料庫顯示語句 發布:2025-07-04 22:04:30 瀏覽:741
編程課道具 發布:2025-07-04 22:04:02 瀏覽:845
華為手機不是安卓什麼時候可以更新米加小鎮 發布:2025-07-04 22:01:37 瀏覽:786
飢荒伺服器搭建視頻 發布:2025-07-04 21:48:38 瀏覽:524
github上傳文件夾 發布:2025-07-04 21:29:22 瀏覽:1003
php課程學習中心 發布:2025-07-04 21:29:16 瀏覽:298