[panda-users] taint segmentation fault

Joshua Hodosh josh.hodosh at ll.mit.edu
Fri Apr 24 16:23:51 EDT 2015


That's correct. The last time I looked at DroidScope, it could
introspect on Dalvik in Android 2.3, running on a 32-bit host.
The DroidScope code we included as the linux_vmi plugin doesn't have
Dalvik-layer introspection enabled, since it's 1) obsolete, and 2)
requires a 32-bit executable. The process, thread, module, and symbol
tracking are still enabled, but won't help with Java/Dalvik code.

Android 2.x's interpreter had a function that was run on each opcode, so
DroidScope's symbol-parsing was enough to bootstrap a Dalvik-instruction
callback point. The interpreter in 4.0 was rewritten for performance,
and doesn't have an analogous function, as far as I know.

I know DroidScope has documentation about Android 4.3, but there doesn't
seem to be any code for it. There haven't been any commits to it for
over two years.

-- 
Josh

On 04/24/2015 12:37 AM, Brendan Dolan-Gavitt wrote:
> The low-level code you see in Android is generally the result of just
> in time compilation. The DroidScope paper [1] discusses some ways to
> determine what the high-level code corresponds to the low-level code,
> but I don't know if that has made it into PANDA – Josh may know more.
>
> -Brendan
>
> [1] https://www.usenix.org/system/files/conference/usenixsecurity12/sec12-final107.pdf
>
> On Thu, Apr 23, 2015 at 9:19 PM, xiaojuan Li <xiaotan6666 at gmail.com
> <mailto:xiaotan6666 at gmail.com>> wrote:
>
>     the thing is:after taint we can get the tainted data flow,assuming
>     it wrote in the name.plog, then extract the .plog using
>     tainted_instr, how can i get useful information from the
>     flowing(such as which high-level func handle it)?
>     like IL in .NET, we can decompile to get c# source code.
>     Thanks 
>
>     2015-04-23 19:49 GMT-04:00 xiaojuan Li <xiaotan6666 at gmail.com
>     <mailto:xiaotan6666 at gmail.com>>:
>
>         thanks first,
>         the code i want to get is the java functions(the higher-level
>         information) that handle special data or something that
>         related with these functions.(like asm,but can be used to
>         locate related functions).
>
>
>         2015-04-23 12:45 GMT-04:00 Brendan Dolan-Gavitt
>         <brendandg at gatech.edu <mailto:brendandg at gatech.edu>>:
>
>             I'm not sure I understand your question. The assembly
>             instructions being executed are the code.
>
>             If you want higher-level information, like what library
>             that code is in, or what the process name is, this is
>             typically done using memory analysis (for example, tools
>             like Volatility). If you can get the configuration right
>             for the osi_linux plugin, you can also get information
>             about what libraries are loaded and where they are from
>             that interface.
>
>             What information are you trying to get?
>
>             -Brendan 
>
>             On Wed, Apr 22, 2015 at 11:23 PM, xiaojuan Li
>             <xiaotan6666 at gmail.com <mailto:xiaotan6666 at gmail.com>> wrote:
>
>                 excuse me, one more question:
>                 taint(use pandalog to write in name.plog which can be
>                 extract by tainted_instr) can get the asid-pc record,i
>                 want to find operating code further and replay with
>                 "-d in_asm -D asmlog.txt" and get the log like this:
>                 ************************************************************************
>                 IN:
>                 0xb52dbbee:  4605       mov    r5, r0
>                 0xb52dbbf0:  2800       cmp    r0, #0
>                 0xb52dbbf2:  f040 8172  bne.w    0xb52dbeda
>
>                 ----------------
>                 IN:
>                 0xb52dbbf6:  462b       mov    r3, r5
>                 0xb52dbbf8:  4620       mov    r0, r4
>                 0xb52dbbfa:  2101       movs    r1, #1
>                 0xb52dbbfc:  aa06       add    r2, sp, #24
>                 0xb52dbbfe:  f7fa f898  bl    0xffffffffb52d5d32
>
>                 ----------------
>                 IN:
>                 0xb52d5d32:  b5f7       push    {r0, r1, r2, r4, r5,
>                 r6, r7, lr}
>                 0xb52d5d34:  4606       mov    r6, r0
>                 0xb52d5d36:  4617       mov    r7, r2
>                 0xb52d5d38:  6800       ldr    r0, [r0, #0]
>                 0xb52d5d3a:  aa01       add    r2, sp, #4
>                 0xb52d5d3c:  460d       mov    r5, r1
>                 0xb52d5d3e:  f7ff fecf  bl    0xffffffffb52d5ae0
>                 *******************************************************************
>                 it just the instructions underlying, but how can i use
>                 these to locate the code that what i want?
>
>                 sorry to be a askhole, i just a new learner...
>                 And thanks for your patience!!
>
>                 2015-04-10 21:24 GMT-04:00 Brendan Dolan-Gavitt
>                 <brendandg at gatech.edu <mailto:brendandg at gatech.edu>>:
>
>                     Once you have used PANDA's taint system to
>                     identify the portions of the code that process the
>                     data you're interested in, you will still have to
>                     analyze that code do understand how it works. One
>                     way to do that might be to use the scissors plugin
>                     to extract out the portion of the trace that
>                     contains the code you're interested in, and then
>                     replay it with QEMU's "-d in_asm -D asmlog.txt"
>                     options to get the disassembly for that code.
>
>                     Alternatively, you could take a memory snapshot at
>                     some point when the code you want to analyze is in
>                     memory (using something like the pmemsave plugin
>                     in PANDA), then use Volatility to analyze that
>                     memory image to extract out the binary, which you
>                     could look at in IDA or something similar.
>
>                     Basically – disassemble the code that handles the
>                     data you're interested in and find out how it
>                     works. Exactly what that means will depend on what
>                     you're hoping to accomplish.
>
>                     -Brendan
>
>                     On Fri, Apr 10, 2015 at 9:07 PM, xiaojuan Li
>                     <xiaotan6666 at gmail.com
>                     <mailto:xiaotan6666 at gmail.com>> wrote:
>
>                         Hi,
>                         Thanks for your job first.
>                         I am a little confused about the result of the
>                         tainted.how can I get enough information about
>                         the processing code from the binary? use the gdb?
>                         Thanks!
>
>                         2015-04-10 12:05 GMT+08:00 xiaojuan Li
>                         <xiaotan6666 at gmail.com
>                         <mailto:xiaotan6666 at gmail.com>>:
>
>                             Thanks for your guys great work!
>                             and I will try.
>
>                             2015-04-10 11:42 GMT+08:00 Brendan
>                             Dolan-Gavitt <brendandg at gatech.edu
>                             <mailto:brendandg at gatech.edu>>:
>
>                                 Hi,
>
>                                 Tim has just updated the
>                                 tainted_instructions tutorial so that
>                                 it reflects how things work now. Could
>                                 you look through that tutorial and see
>                                 if it helps with your problem?
>
>                                 https://github.com/moyix/panda/blob/master/docs/tainted_instructions.md
>
>                                 Note that you will probably need to do
>                                 a "git pull" and rebuild (make clean ;
>                                 ./build.sh) in order to make sure
>                                 everything works as it says in the
>                                 tutorial.
>
>                                 -Brendan
>
>                                 On Thu, Apr 9, 2015 at 9:30 AM,
>                                 xiaojuan Li <xiaotan6666 at gmail.com
>                                 <mailto:xiaotan6666 at gmail.com>> wrote:
>
>                                     Now that the panda taint.md
>                                     <http://taint.md> is not fresh,can
>                                     you guys give me some help?
>                                     I use the replay plugin,here is my
>                                     command and the result.
>
>
>
>
>>                                     the content of
>                                     pk_search_strings.txt is :"sdt"
>
>                                     I am confused here:in the paper—
>                                     Repeatable reverse with panda:
>                                     :
>                                     it is clear that:if I use the
>                                     stringsearch and taint plugin,when
>                                     it matches, the taint label will
>                                     be put and then taint action will
>                                     start.but when I use it, it seems
>                                     wrong(the picture showed
>                                     before):no taint action
>                                     execute,and i am confused about
>                                     the tstringsearch's result.
>                                     how can i use it to analysis?
>                                     Thanks a lot!
>>
>                                     2015-04-08 10:14 GMT+08:00
>                                     xiaojuan Li <xiaotan6666 at gmail.com
>                                     <mailto:xiaotan6666 at gmail.com>>:
>
>                                         I get the replay file by
>                                         running runandroid script. and
>                                         i use qemu-system-arm command
>                                         just to do some replay work.
>                                         I may not understand you at
>                                         all in this emal.do you mean
>                                         that i should gdb the original
>                                         program rather than the record
>                                         file?
>                                         Thansk
>
>                                         2015-04-08 9:52 GMT+08:00
>                                         Brendan Dolan-Gavitt
>                                         <brendandg at gatech.edu
>                                         <mailto:brendandg at gatech.edu>>:
>
>                                             Hmm. gdb should normally
>                                             stop when you get a segfault.
>
>                                             Are you by any chance
>                                             running PANDA using the
>                                             runandroid script? If so,
>                                             you will need to instead
>                                             invoke PANDA manually, i.e.:
>
>                                             gdb --args
>                                             arm-softmmu/qemu-system-arm [...]
>
>                                             And then once it crashes,
>                                             type "bt" at the gdb
>                                             prompt to get a backtrace.
>
>                                             -Brendan
>
>                                             On Tue, Apr 7, 2015 at
>                                             9:47 PM, xiaojuan Li
>                                             <xiaotan6666 at gmail.com
>                                             <mailto:xiaotan6666 at gmail.com>>
>                                             wrote:
>
>                                                 when gdb,it shows:
>                                                 and then i see the
>                                                 log:it shows segfault:
>
>>
>                                                 2015-04-08 9:03
>                                                 GMT+08:00 xiaojuan Li
>                                                 <xiaotan6666 at gmail.com
>                                                 <mailto:xiaotan6666 at gmail.com>>:
>
>                                                     maybe  i am wrong.
>                                                      i use the command
>                                                     line:"taint2:label_mode=binary,query_outgoing_network=1"and
>                                                     I found that when
>                                                     i use taint2,
>                                                     after it loads
>                                                     panda_taint2.so,it
>                                                     shows:"taint2:instructed
>                                                     not to inline
>                                                     taint ops .success".
>
>                                                     2015-04-08 8:54
>                                                     GMT+08:00 xiaojuan
>                                                     Li
>                                                     <xiaotan6666 at gmail.com
>                                                     <mailto:xiaotan6666 at gmail.com>>:
>
>                                                         ok.
>                                                         1.I want to
>                                                         use taint
>                                                         plugin to get
>                                                         information
>                                                         about some
>                                                         functions(of
>                                                         course, it is
>                                                         closed-source),so
>                                                         I think I can
>                                                         stringsearch
>                                                         potential data
>                                                         and then taint
>                                                         them and next
>                                                         I can locate
>                                                         the functions
>                                                         which solves
>                                                         these data.
>
>                                                         2.the command
>                                                         line I used is
>                                                         : stringsearch:name=***;taint2:tainted_instructions=1.
>
>                                                         thanks
>
>
>                                                         2015-04-08
>                                                         8:40 GMT+08:00
>                                                         Brendan
>                                                         Dolan-Gavitt
>                                                         <brendandg at gatech.edu
>                                                         <mailto:brendandg at gatech.edu>>:
>
>                                                             Could you
>                                                             provide:
>
>                                                             1. What
>                                                             information you're
>                                                             trying to get
>                                                             2. The
>                                                             command
>                                                             line
>                                                             you're
>                                                             using to
>                                                             run PANDA
>                                                             with the
>                                                             taint2 plugin
>
>                                                             ?
>
>                                                             Right now
>                                                             I believe
>                                                             taint2
>                                                             does not
>                                                             produce
>                                                             very much
>                                                             output by
>                                                             default.
>                                                             Instead
>                                                             you use
>                                                             the
>                                                             -pandalog
>                                                             <filename>
>                                                             command
>                                                             line
>                                                             option,
>                                                             and taint2
>                                                             will write
>                                                             its
>                                                             results
>                                                             there in
>                                                             pandalog
>                                                             format;
>                                                             you can
>                                                             then read
>                                                             them using
>                                                             pandalog_reader
>                                                             (see
>                                                             panda/pandalog_reader.c
>                                                             for
>                                                             details on
>                                                             that tool).
>
>                                                             -Brendan
>
>                                                             On Tue,
>                                                             Apr 7,
>                                                             2015 at
>                                                             8:32 PM,
>                                                             xiaojuan
>                                                             Li
>                                                             <xiaotan6666 at gmail.com
>                                                             <mailto:xiaotan6666 at gmail.com>>
>                                                             wrote:
>
>                                                                 when I
>                                                                 tried
>                                                                 taint2,it
>                                                                 showed
>                                                                 the
>                                                                 same
>                                                                 error
>                                                                 with
>                                                                 taint1, the
>                                                                 olny
>                                                                 difference
>                                                                 is
>                                                                 that
>                                                                 taint2
>                                                                 has no
>                                                                 segfault
>                                                                 error,just
>                                                                 uninit
>                                                                 taint
>                                                                 plugin.
>
>                                                                 2015-04-08
>                                                                 8:28
>                                                                 GMT+08:00
>                                                                 Brendan Dolan-Gavitt
>                                                                 <brendandg at gatech.edu
>                                                                 <mailto:brendandg at gatech.edu>>:
>
>                                                                     Could
>                                                                     you be
>                                                                     a
>                                                                     little
>                                                                     more
>                                                                     descriptive
>                                                                     about
>                                                                     how it
>                                                                     failed?
>                                                                     Segfault?
>                                                                     Error
>                                                                     message?
>                                                                     Incorrect
>                                                                     output?
>
>
>                                                                     -Brendan
>
>                                                                     On
>                                                                     Tue,
>                                                                     Apr 7,
>                                                                     2015
>                                                                     at
>                                                                     8:27
>                                                                     PM, xiaojuan
>                                                                     Li
>                                                                     <xiaotan6666 at gmail.com
>                                                                     <mailto:xiaotan6666 at gmail.com>>
>                                                                     wrote:
>
>                                                                         i tried
>                                                                         taint2
>                                                                         too,it
>                                                                         failed.
>
>                                                                         2015-04-07
>                                                                         5:20
>                                                                         GMT+08:00
>                                                                         Leek,
>                                                                         Timothy
>                                                                         - 0559
>                                                                         - MITLL
>                                                                         <tleek at ll.mit.edu
>                                                                         <mailto:tleek at ll.mit.edu>>:
>
>                                                                             Also
>                                                                             note
>                                                                             that
>                                                                             the
>                                                                             “taint”
>                                                                             plugin
>                                                                             is
>                                                                             somewhat
>                                                                             defunct.
>                                                                              “taint2”
>                                                                             is
>                                                                             the
>                                                                             one
>                                                                             we
>                                                                             are
>                                                                             actively
>                                                                             using
>                                                                             and
>                                                                             developing.
>                                                                             --
>                                                                             Tim
>                                                                             Leek
>                                                                             Technical
>                                                                             Staff
>                                                                             Cyber
>                                                                             System
>                                                                             Assessments
>                                                                             MIT
>                                                                             Lincoln
>                                                                             Laboratory
>                                                                             781-981-2975
>                                                                             <tel:781-981-2975>
>
>
>                                                                             From:
>                                                                             Brendan
>                                                                             Dolan-Gavitt
>                                                                             <brendandg at gatech.edu
>                                                                             <mailto:brendandg at gatech.edu>>
>                                                                             Date:
>                                                                             Monday,
>                                                                             April
>                                                                             6,
>                                                                             2015
>                                                                             at
>                                                                             5:18
>                                                                             PM
>                                                                             To:
>                                                                             xiaojuan
>                                                                             Li
>                                                                             <xiaotan6666 at gmail.com
>                                                                             <mailto:xiaotan6666 at gmail.com>>
>                                                                             Cc:
>                                                                             "panda-users at mit.edu
>                                                                             <mailto:panda-users at mit.edu>"
>                                                                             <panda-users at mit.edu
>                                                                             <mailto:panda-users at mit.edu>>
>                                                                             Subject:
>                                                                             Re:
>                                                                             [panda-users]
>                                                                             taint
>                                                                             segmentation
>                                                                             fault
>
>                                                                             Could
>                                                                             you
>                                                                             run
>                                                                             that
>                                                                             under
>                                                                             gdb
>                                                                             and
>                                                                             provide
>                                                                             us
>                                                                             with
>                                                                             a backtrace
>                                                                             when
>                                                                             it
>                                                                             crashes?
>
>
>                                                                             -Brendan
>
>                                                                             On
>                                                                             Sunday,
>                                                                             April
>                                                                             5,
>                                                                             2015,
>                                                                             xiaojuan
>                                                                             Li
>                                                                             <xiaotan6666 at gmail.com
>                                                                             <mailto:xiaotan6666 at gmail.com>>
>                                                                             wrote:
>
>                                                                                 Hi,
>
>                                                                                 excuse
>                                                                                 me,i
>                                                                                 have
>                                                                                 a question
>                                                                                 about
>                                                                                 taint
>                                                                                 plugin:(stringsearch:name=***;taint:tainted_instructions=1)
>                                                                                 when
>                                                                                 I started
>                                                                                 it
>                                                                                 showed
>                                                                                 success:
>
>
>                                                                                 but
>                                                                                 when
>                                                                                 it
>                                                                                 finished
>                                                                                 search,it
>                                                                                 showd
>                                                                                 "uninit
>                                                                                 taint
>                                                                                 plugin
>                                                                                 segementation
>                                                                                 fault"
>
>>                                                                                 how
>                                                                                 can
>                                                                                 I fix
>                                                                                 it?
>                                                                                 Thanks
>                                                                                 a lot!
>                                                                                 --
>
>                                                                                 wait
>                                                                                 and
>                                                                                 hope~~
>
>
>
>
>                                                                         --
>
>                                                                         wait
>                                                                         and
>                                                                         hope~~
>
>                                                                         _______________________________________________
>                                                                         panda-users
>                                                                         mailing
>                                                                         list
>                                                                         panda-users at mit.edu
>                                                                         <mailto:panda-users at mit.edu>
>                                                                         http://mailman.mit.edu/mailman/listinfo/panda-users
>
>
>
>
>
>                                                                 -- 
>                                                                 wait
>                                                                 and hope~~
>
>
>
>
>
>                                                         -- 
>                                                         wait and hope~~
>
>
>
>
>                                                     -- 
>                                                     wait and hope~~
>
>
>
>
>                                                 -- 
>                                                 wait and hope~~
>
>
>
>
>
>                                         -- 
>                                         wait and hope~~
>
>
>
>
>                                     -- 
>                                     wait and hope~~
>
>
>
>
>
>                             -- 
>                             wait and hope~~
>
>
>
>
>                         -- 
>                         wait and hope~~
>
>
>
>
>
>                 -- 
>                 wait and hope~~
>
>
>
>
>
>         -- 
>         wait and hope~~
>
>
>
>
>     -- 
>     wait and hope~~
>
>
>
>
> _______________________________________________
> panda-users mailing list
> panda-users at mit.edu
> http://mailman.mit.edu/mailman/listinfo/panda-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0001.htm
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 99277 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0008.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 118621 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0009.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 106030 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0010.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 90587 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0011.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 63070 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0001.jpg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 13244 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0012.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 194887 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0013.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 25300 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0014.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 12246 bytes
Desc: not available
Url : http://mailman.mit.edu/pipermail/panda-users/attachments/20150424/47bd601a/attachment-0015.png


More information about the panda-users mailing list