如何定位溢出點位置

程序:

#include <stdio.h>
void exploit()
{system("/bin/sh");
}
void func()
{char str[20];read(0,str,50);printf("the str is:%s\n",str);
}
int main()
{func();return 0;
}

關掉保護機制:

gcc -no-pie -fno-stack-protector -z execstack -m32 -o 3.exe 3.c

檢查一下:

checksec 3.exe
0x01 kali自帶
msf-pattern_create -l 100

創建長度為100的字符串
在這里插入圖片描述
運行我們的程序:

start

一直下一步,直到需要填入參數:
在這里插入圖片描述
這個時候程序報錯了,表示有溢出了
在這里插入圖片描述
我們來看看eip的值,0Ab1,表示溢出使返回的地址是這個
在這里插入圖片描述
使用命令,查看在哪里溢出了

msf-pattern_offset -q 0Ab1

在這里插入圖片描述
32位,我們可以修改從32位開始的數據,讓程序跳轉到我們指定的地址執行

0x02 peda
pattern create 100

生成長度為100字符串
在這里插入圖片描述
使用命令r,讓程序繼續執行,復制我們生成的字符串,注意單引號不要復制
在這里插入圖片描述
溢出了,查看現在的EIP,A)AA
使用命令查看溢出位置

pattern offset A)AA

在這里插入圖片描述
32位

0x03 pwndbg插件
cyclic 100

生成長度為100的字符串,按照上面的順序,得到溢出eip的值為iaaa
查找溢出位置:

cyclic -l iaaa

32位

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/380179.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/380179.shtml
英文地址,請注明出處:http://en.pswp.cn/news/380179.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

.net知識和學習方法系列(六)關于數值類型

過年總是忙&#xff0c;沒有更多的時間來寫博客&#xff0c;不過還是挺想念這塊地方的。 本次博客說一下數值類型吧&#xff01; 不管那種語言&#xff0c;都為數據類型一說&#xff0c;在C#中也是&#xff0c;不過C#的數據類型分了兩類&#xff0c;一是值類型&#xff0c;一是…

【競賽題解】2021年廣東工業大學第十五屆文遠知行杯程序設計競賽(同步賽)

B 找山坡 題意&#xff1a;在數組中找到兩相等元素相距最大的距離且這兩元素間的元素都不小于該兩端值 思路&#xff1a;采用單調棧 例如&#xff1a;a[] { 2 3 5 4 6 3 }&#xff0c;棧內存儲元素的坐標&#xff08;從1開始&#xff09;&#xff0c;便于計算距離 首先將a[…

[轉]JAVA AES 加密算法

本文轉自&#xff1a;http://blog.sina.com.cn/s/blog_7c8eb1590100svr0.html package com.siro.tools;import javax.crypto.Cipher;import javax.crypto.spec.IvParameterSpec;import javax.crypto.spec.SecretKeySpec;import sun.misc.BASE64Decoder;import sun.misc.BASE64E…

java中Scanner類中 next()與nextLine()的區別

問題&#xff1a;提示用戶輸入一個英文字符串或者要解密的字符串&#xff0c;然后通過掃描儀獲取用戶輸入的字符串&#xff0c;經過加密或者解密后&#xff0c;把字符串輸出。 import java.util.Scanner;public class Encryption {public static void main(String[] args) {Sca…

操作系統中的處理機調度調度_操作系統中的流程分類和調度

操作系統中的處理機調度調度處理 (Process) In the operating system, there are numerous task and application program run simultaneously. A program is stored in the hard disk or any other form of secondary storage. When the program is executed it must be loade…

NX機制及繞過策略-ret2libc

程序&#xff1a; 1.c #include <stdio.h> void exploit() {system("/bin/sh"); } void func() {char str[0x20];read(0,str,0x50); } int main() {func();return 0; }0x01 NX介紹 溢出攻擊的本質在于馮諾依曼計算機模型對數據和代碼沒有明確區分這一先天性缺…

網站SEO策略的制定

在對一個網站做SEO的時候&#xff0c;SEO技術水平類似的人&#xff0c;營銷效果可能天壤之別&#xff0c;這是因為網站SEO策略的制定的不同&#xff01;-----這個是最根本的。 SEO技術非常的簡單&#xff0c;因為SEO不是去尋找搜索引擎的漏洞&#xff0c;而是根據搜索引…

Python | 程序從列表中刪除范圍內的所有元素

Given a list and we have to remove elements in a range from the list in Python. 給定一個列表&#xff0c;我們必須從Python中的列表中刪除范圍內的元素。 刪除列表(開始索引&#xff0c;結束索引) (del list(start_index, end_index)) del() method is used to remove a…

面向對象 (接口 Interface)

1&#xff0c;面向對象(接口的概述及其特點) A:接口概述 從狹義的角度講就是指java中的interface從廣義的角度講對外提供規則的都是接口 B:接口特點 a:接口用關鍵字interface表示 interface 接口名 {}b:類實現接口用implements表示 class 類名 implements 接口名 {}c:接口…

android unbound prefix

少一個命名空間加上就行了&#xff1a;xmlns:android"http://schemas.android.com/apk/res/android" 轉載于:https://www.cnblogs.com/nizuimeiabc1/archive/2011/10/09/4254310.html

【競賽題解】第22次CCF計算機軟件能力認證 B

今天&#xff08;準確說是昨天&#xff0c;一下子就過12點了&#xff09;下午剛參加了CSP認證考試&#xff0c;大概是考了220&#xff08;前兩題AC&#xff0c;第三題太折磨了懶得看了&#xff0c;后面兩題各混了10分&#xff09;&#xff0c;唯一有點參與感的就是B題了&#x…

gbd調試64位程序關鍵

程序&#xff1a; 4.c&#xff1a; #include<stdio.h> void exploit() {system("/bin/sh"); } void main() {char buf[20];gets(buf); }編譯&#xff1a; gcc -no-pie -fno-stack-protector -m64 -o 4.exe 4.cNX保護&#xff0c;棧數據不可執行 使用命令&…

C#全局鼠標鍵盤Hook (備查)

using System; using System.Collections.Generic; using System.Reflection; using System.Runtime.InteropServices; using System.Text; using System.Windows.Forms; namespace DCIEngine.FrameWork.Snap { /// <summary> /// 這個類可以讓你得到一個在…

fcfs調度算法_FCFS:先來先服務調度算法

fcfs調度算法The FCFS, which stands for First Come First Serve Scheduling Algorithm, is a non-preemptive scheduling algorithm, which means that if a process once starts executing in the processor, then it cannot be preempted in between the processing. Thus,…

親和數

Problem Description 古希臘數學家畢達哥拉斯在自然數研究中發現&#xff0c;220的所有真約數(即不是自身的約數)之和為&#xff1a; 1245101120224455110&#xff1d;284。 1* 220220&#xff1b;2* 110220&#xff1b;4* 55220&#xff1b;5* 44220&#xff1b;10*20220;…

轉:JNI jstring與c++字符串類型轉換函數

jstring與c字符串類型轉換函數 jstring str2jstring(JNIEnv* env,const char* pat) {//定義java String類 strClassjclass strClass (env)->FindClass("Ljava/lang/String;");//獲取String(byte[],String)的構造器,用于將本地byte[]數組轉換為一個新Stringjmetho…

python字符串轉浮點數_如何在Python中檢查字符串是否為數字(浮點數)?

python字符串轉浮點數Using python it is very to interconvert the datatypes of a variable. A string can be easily converted to an integer or a float. However, asserting a string to be a float is a task by itself. Python provides an option to assert if a stri…

nhibernate學習之三級聯(Ternary Associations)篇

1) 學習目標通過進一步學習Nhibernate基礎知識&#xff0c;掌握用Nhiberate實現對級聯的支持&#xff0c;通過一個簡單的用戶角色權限系統來體驗nhibernate對級聯的強大支持。2&#xff09;開發環境和必要準備 開發環境為:windows 2003,Visual studio .Net 2005,Sql server 200…

【競賽題解】Codeforces Round #715 (Div. 2) C

C. The Sports Festival 題意&#xff1a;對于給定的整型數組aaa&#xff0c;每次選擇其中一個元素aia_iai?&#xff08;不能重復選擇同一元素&#xff09;&#xff0c;每次計算已選擇的元素的極差&#xff08;最大元素減最小元素的差&#xff09;&#xff0c;輸出最后極差和…

C和匯編---sizeof運算符和strlen函數

sizeof sizeof是C語言的內置運算符&#xff0c;以字節為單位給出指定類型的大小。 程序&#xff1a; #include <stdio.h>int main(void) {int a8;int b sizeof(a);//printf("a占用字節%u\n",sizeof(a));printf("a占用字節%d\n",b);return 0; }反匯…