Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Describe Something Special You Want To Buy in The Future

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 13

1.

(14) Describe something special you want to buy in the future/ talk about a house
or an apartment you would like to live.
Everyone has a dream and so do I. I have a dream that I can afford a house
in the nearest future for my own family. It would be located in my
hometown – Bac Ninh province. It doesn’t have to be too beautiful and big,
but it must be cozy and full of happiness. I can image my future house has at
least 4 rooms: a kitchen, 2 bedroms and a living room. It will be a place
where our family can find peace after a hard-working day, we can teach our
children how to love and live well. I will try my best to make my dream
comes true. After graduating from my university, I will work hard, spend
money and I think about 4 years at work I can afford a hourse for myself.

- being able to afford a house  dream


- I have – when? Purpose? Describe – 4 rooms, convenient. It requires..
- What do you do to make your dream come true?
2. Describe your idea of a perfect vacation/ 12. Describe an important day you
celebrate in your country.
A perfect vacation is a special occasion for us to relax after work, we can
have more time to communicate with our family, make the relationship
between us and our nearest and dearest more vigorous. As a person who
works for the government, I just can have my vacation on special day. I
want to describe an important day I celebrate in my country, September
2nd – the Independence Day of Vietnam. I spend that day planing a trip for
my family. We can go together, remind ourshelves about the glorious
history. We go to HCM mausoleum, enjoy fresh air and the beauty of
landscape there, tell stories about HCM as a significant lesson. After that,
we have a small party at a cozy restaurant, we share love, care and funny
stories. All of us have a memorable day and we think that, we know how to
find balance after hectic life at work.
-
3.Describe your favourite place to eat out/ 4.Describe an area of countryside you
know and like.
I want to introduce to you my favorite area of coutryside to eat out I like to
go. It is located in Van Giang district, Hung Yen province. As you know,
Hung Yen is famous for fruits, traditional foods, trees and flowers, and I
always want to find a place where I can not only eat fresh foods, but also
relax. Van Giang meets my needs, I often go with my friend to there and eat
“banh te” which is very delicous, you can easily find a restaurant you like
along the street from Hanoi to Van Giang. At there, we can enjoy the
peaceful atmosphere, communicate with nature and do not worry much
about the quality of products. I advise you to visit there and I make sure you
will love that place as I do.
5.Describe a sport you would like to learn
Sports play an essential role in our life. They will help us to keep fit and
stay healthy, help us to build a vigorous immune system to protect
ourshelves against severe diseases relate to not only mental but also
physical health. I love sports. I try playing many sports to find the most
suitable for me and I realize football is my biggest passion. I play football
at my leisure but I want to learn more to be professional. I want to enroll in
some classes and have my own team to play in a big competition. In order
to play football, you just need a ball and a group of people, and they are
divided into 2 parties. I would like to learn football because I can improve
my flexibility, my strength and bring me lots of happiness after a hard-
working day. Acctually, I love communicating during the match with my
team, the whole team unite to achieve one purpose. I will pursue my
passion, football really helps me and I hope that I will be a professtional
player and in the near future.
6.Describe a television programme you watched and did not enjoy
I love watching TV at my leisure and “Thank god you’re here” is the
most enjoyable television programme for me to indulge. I have watched this
programme for 3 years. Each episode involves performers walking through a door
into an unknown situation greeted by the line "Thank God you're here!”. At the end
of each episode a winner was announced. I love the situation the programme create
to challenge the guests. The programme is divided into 4 periods of time related to
4 plays. Each plays lasts approximately 30 minutes. The audiences can have lots of
emotion like happiness, sadness, sympathy, they laugh and after that they can cry
within a play. I can relax during this programme and I often spend time watching
“Thank God you’re here” with my family.
7.Describe someone who had an important influence in your life.
Each of us has our own idol or a person that we want to imitate and they
have an important influence in our life. They can be super stars, celebrities
such as Ronaldo, Son Tung mtp,.. and most idols will be famous and
talented. Nevertheless, my idol who is the most important influencer in my
life is my father. My father is running a small business at home but he
experienced lots of hard works before. My father has to work to raise his
children. He is very busy but he always spend his leisure to communicate
and teach his children some meaningful stories. Thanks to his support, I
am self-confident to tackle differences in life. He is kind, helpful, children-
friendly, patient and understanding. He tought me in detail lots of things
like table manners, behavior and so on. I think his characteristics affect me
the most is positive outlook in life.
Because of age, has changed a lot. He has some wrinkles on his face but
he always appear with a bright smile. I want he will be healthy and really
set a good example for us.
8.Describe a subject that helped you in life, even though you didn’t like it in shool.
When I was a little girl, I really really hated learning English. I have
learned English for more than 10 years but I think I can’t concentrate on
this subject. Especially, my speaking and listening is not good and it make
me more difficult to approach English. I have realized the importance of
English since I studied at university. I aware that with English, I can be
more open-minded, more successful, I can read documents related to my
major and understand it in accuracy, I can indulge films, musics without
subtitle. Nevertheless, without English, you have less options to chose and
have difficulties in communicating with the world. I realize that, I hate
English because I haven’t found the suitable way to learn this kind of
subject and I didn’t approach properly. Now, I really want to improve my
English and I like to enjoy, learn it. Because of the internet development,
we have more method to learn English, communicate directly with native
speaker and many open sources like youtube, cambridge. I hope that my
English will be better in the future and English will go with me through the
rest of my life.
10.Talk about the most important benefit of the internet.
In my perspective, there are 3 main reasons why internet becomes more
and more important in our life.
First of all, Internet brings people in over world get closer, no country
barriers. We can use facebook, zalo to add new friend and have a chat with
a person who lives far away from us and keep in touch. Especically, it is
very convinient and cheap.
The second one, Internet is a huge resources for us to find informations,
find documents. Everyone can post something and immediately, we can
read, watch it. With Internet, we can learn more effectively, help us in self-
study. For example, during covid 19, we can’t go to school because of
social distancing, we use Internet to learn online and spend not only time
moving but also money.
Finally, Internet for amusement. We use Internet to watch films, listen to
music, play game. It helps us relax after hard-working day. Moreover, we
can take advantage of Internet to read news from different parts of the
world.
11.Talk about a gift you gave to someone recently
Recently, I gave my girl friend a very cute stuffed bee that I call “Min” . I
saw Min’s face is similer to my girl friend so I decided to give her. When
she recieved my gift, she was very surprised and interested in this stuffed
bee which made me happy the most. I like to see her bright smile and the
way she express her happiness when I did something special for her. “Min”
is very simple but so cute, it has a lovely mouth like wanna cry. “Min” has
a white wings and the whole body is slightly yellow. After giving a gift, I
always feel happy insight because I think I can bring special thing to
someone I love.
15.Describe a person whom you like to work or study with.
Someone said “ If you want to go fast, go alone, but if you want to go for a long
way, go with your friend”. The partner plays an important role in our journey to
study, to achieve success. I found it difficult to have a good partner until I meet my
girl friend. She is 2-years younger than me. We have different majors but English
is our common subject. With her, our lesson becomes more interesting and
memorable. I can learn new words better. Learning languages needs practicing day
by day like speaking, listening, reading, writing, applying new words. It is a good
chance for us to understand more about each other, spend more meaningful time
together and of course we learn new thing to have a better future. Moreover, we
can learn from the other opinions. We usually learn together after dinner at my
university, each day we find a topic to discuss includes in new words, structure,
idioms or phrase verb and especially after each lessons, our relationship becomes
more close-knit.

1.(14) Describe something special you want to buy in the future/ talk about a house
or an apartment you would like to live.
 General to personal: having dream  able to make it come true 
wonderful in my case
 House : When do you have this dream
Describe: - general sentence: Basicly, it will be convenient, morden,
cozy, ecofriendly, not too big
- inside
- outside
 After having this dream  motivation, hopes  stick at it never drop out
 Believe that I can do it
2. Describe your idea of a perfect vacation
 Vacation: special occasion, not many people can actually enjoy, spend
vacation time properly, affectively
 Many people plan a perfect vacation and then it become unreal and
unfeasible
 perfect vacation: planed well, able to happen.
 Depends on individuals.
 Introverst  love peaful, ecofriendly enviroment
 Escape from busy life, traveling some remote area with my beloved.
12. Describe an important day you celebrate in your country.
 civil servant  don’t have much time to relax  depend on office
celebrate party, find time to unwind in special days: international labor
day,.
 September 2nd: the birth of VN
- How is that day
- Back to the origin
 What to you do in this day?
 How special this day to you?
3.Describe your favourite place to eat out
 Personal to personal: senior  nerve-racking  after finals  eat 
favorite restaurant
 Where? Name? Which kind of food? Style? View? Enviroment? Is it famous
 What kind of people will like it
 Go with?
4.Describe an area of countryside you know and like.
 Intro: Personal to personal: senior  nerve-racking  after finals 
unwind area : ecopark
 Where?
 Enviroment? Facilities? Enviroment? Separate system includes:...? Is it
expensive
 Activities there?
 Go with whom?
 The most interesting part? Bring job, money to develop hometown, touris
atractors
5. Describe a sport you would like to learn
 Intro: sporty  football  spectator sport
 Why you want to learn? (co duyen nao)
 What do you need to play?
 The benefit?
 What is your plan to learn?
 In the future?
6. Describe a television programme you watched and did not enjoy
 Intro: big fan of watching TV, lack of time  chose the best (short but
informative)  news
 When?
 Describe : offical chanel
 Why you don’t like: too long  not suitable
Instead of...
I often read news online  duplicate
7.Describe someone who had an important influence in your life.
 To me  mother
 Her occupation?
 How she influence your life: leason
Try hard, pressure
Mental support: advise
 Pround of my mom
 Motivation to keep studying...
8.Describe a subject that helped you in life, even though you didn’t like it in shool.
 Intro: English
 Why you have to learn E even though you didn’t like?
 My father told me: you can be really good at sth you don’t like, to like, to
love sth  stick at it
 By practicing, learning  love it
 Future?
10.Talk about the most important benefit of the internet.
 Intro: The internet
 Perfect learning tool: everytime
Anywhere
How you are
 To me: military student  lack of time to learn my interest
Communicate, purchase course
 variety
 Covid 19  obvious
11.Talk about a gift you gave to someone recently
 General to personal: having dream  able to make it come true 
wonderful in my case
 House : When do you have this dream
Describe: - general sentence: Basicly, it will be convenient, morden,
cozy, ecofriendly, not too big
- inside
- outside
 After having this dream  motivation, hopes  stick at it never drop out
 Believe that I can do it
15.Describe a person whom you like to work or study with.
 Help me: revise knowledge, have fun, compliment each other
 Learning with my be-loved, my boyfriend motivation, Help me: revise
knowledge, have fun, compliment each other
 Old? Job? When you learn? How often? How you learn together?
 How he help you?
Contribution Title

First Author1[0000-1111-2222-3333] and Second Author2[1111-2222-3333-4444]


1
Princeton University, Princeton NJ 08544, USA
2
Springer Heidelberg, Tiergartenstr. 17, 69121 Heidelberg, Germany
lncs@springer.com

Abstract. Patch testing, a problem is happened (happens) when have new module (having a new) (or update module)
and have demand to find vulnerabilities in that. It is (occurs) when chopped symbolic execution, a novel form of
symbolic execution that allows users to specify uninteresting parts of the code to exclude during the analysis, is
situation(??). Chopped symbolic execution allows testing a module of software with input from software without
testing on all paths of the program. Chopped symbolic execution in patch testing only promotes all of its potential
when it has a brilliant choose method which is used to determine what is the part of software do not need test. In this
paper, we propose a novel exclude functions method in finding memory bugs for chopped symbolic execution with
patch testing problems. The exclude functions method use the control follow graph to determine uninteresting
functions. Moreover, we use the cyclomatic complexity to balance with resource and speed. Our preliminary result
show that the novel exclude functions can effectively use in choosing uninteresting functions automatically when
using chopped symbolic execution for patch testing problems. We have implemented our approach in a library called
ChopperAEx, which can automatically generate exclusion input for Chopper.

Keywords: Patch testing, Symbolic execution, Static analysis

1 Introduction

The developers have to review code and fix the bugs when an update is released. It spends a large cost of time and
strength. The users often refuse to upgrade their software to the most recent version [10]. Moreover, the patches
often contain the threats with new lines of source code [11, 12] partly because the developers can’t find out all of
bugs. Therefore, a method which can find the vulnerabilities in new patch automatically is necessary.
Symbolic execution is powerful technique for finding software vulnerabilities. There are many tools was
introduced for finding software vulnerabilities [1, 3-5, 7-9]. However, despite important technical advances,
symbolic execution often struggles to reach deep parts of the code due to the well-known path explosion problem
and constraint solving limitations [2]. For patch testing, there are some propositions for it using symbolic execution
technique, like KATCH [6]. The most of method using symbolic execution method use it for test all path of
program, so those are still influent by the path explosion problem, the one of the biggest challenges of symbolic
execution. It is before the chopped symbolic execution is introduced [2]. It brings the new approach on patch testing
problem. The researcher can try methods which just care about interesting path. It is very importance on using
symbolic execution for patch testing because it eases the damage from the path explosion problem.
One of the most popular symbolic execution tools is KLEE. It is a symbolic virtual machine built on top of the
LLVM compiler infrastructure [1]. One of KLEE’s functions is bugs found, but with complex test, KLEE has not
good result. The problem at here actually is path explosion. Chopped symbolic execution was introduced to resolve
that and Chopper, an extend version of KLEE, is the tool to do that [2].
Chopper does not really ignore the exclude functions because this may lead to both false positives and
false negative. Instead, the exclude parts are executed lazily, when their affect may be observable buy
code under analysis. Chopped symbolic execution leverages various on-demand static analyses at
runtime to automatically exclude code fragments while resolving their side effects [2]. Although chopper
is a great idea but exist a problem. The exclude parts, actually is exclude functions, have to determine by
user. How to find out the functions are not interesting? In fact, with patch testing problem, the users
can determine a function is not interesting if it is not affected by the update, but they have to analysis
the source code to do that. As the result, the advantage from an automatic analysis tool like Chopper is
reduced.

Therefore, instead of using expert knowledge to determine the uninteresting functions, our approach
use the static analysis to find out the uninteresting functions and where they are automatically. Chopper
can use this information as an input. In patch testing, the commits bring the information about modified
code. The modified functions or addition functions can be determined easily with a version control
system or a source management [13-17]. However, finding out the uninteresting functions which not
affect by the update is not easy like above. It will spend a huge time to analysis the source code.
Moreover, if excluding all of functions which not affected by the patch, Chopper will spend very much
time to find side effects, take snapshot and recovery when need.

In this paper, we propose a novel exclude functions method called chop’s automatic exclusion that can
determine the suitable functions will be excluded with target function as input for chopped symbolic
execution in patch testing. The target function is a function which be modified or add in this patch. We
developed a prototype implementation of this method and report the results of initial experimental
evaluation that demonstrates that this method can indeed lead effective discovery of the finding
memory vulnerabilities on patch testing with Chopper.
In summary, in this paper we make the following contributions:

1. We introduce chop’s automatic exclusion, a novel exclude functions method for chopped symbolic execution in
patch testing.
2. We present ChopperAEx, a prototype implementation of our technique as a dynamic library of opt [18], and
make it publicly available.
3. We report on an experimental evaluation of ChopperAEx with Chopper for failure reproduction with some CVEs
like Chopper’s experimental.

2 OVERVIEW

In this section, we give an overview of chop’s automatic exclusion in patch testing using a simple program (see Fig.
1). In particular, Fig. 1a show a part of the source code of program (function main and test). It is on the patch lead to
target function (function f). Suppose that f is the function which was modified in the patch. Fig. 1b shows the control
follow graph (CFG) of program and the functions will be excluded (they are function n and function m).

1.void test(char* a){


2. char* str1 = "OK";
(a) (b)
main
3. if(str(str1) == str(a)){
4. m(); a=α
5. f(a);
6. }
test
7. else{
8. n(); str(α) == “OK”
Fig. 1. Graphical illustration of Chop’s automatic exclusion on a simple example

When start at function main, we have a symbolic as a parameter is a equal α. For calling f, the path is from main to
test and f at the end, as long as we have str(α) equal “OK” condition. Suppose that m and n are the complex
functions (the way to define a function is complex or not will be mentioned below). Because we just need test with
function f, function n is not need to test actually. With function m, if it does not influence to the variables which are
used by function f, we also want to exclude it and vice versa. However we are greedy with function m, we will
always exclude it. If function m influences to function f, it will be recovered by chopped symbolic execution’s side
effects mechanism.
Because of greedy mechanism like above, the performance of chopped symbolic execution is reduced
with the cases which like function m above except they also influence to target function. Therefore, we
used the cyclomatic complexity, a quantitative measure of the number of linearly independent paths
through a part of program's source code [19], to balance between positive effect from the comfortable
cases and negative effect from the uncomfortable cases. The function’s cyclomactic complexity is limited
with the threshold. When considering function’s exclusion, if this function has the complexity which is
higher the threshold, it can be add to excluded functions list and vice versa.

3 Chop’s automatic exclusion

In this section, we will present about the algorithms are used in chop’s automatic exclusion and we also introduce
about the prototype implementation, ChopperAEx.

Algorithm 1 Chop’s automatic exclusion


Input: target
Output: excludedFuntions
4. shortestPath ← GETSHORTESTPATH()
5. excludedFuntions ← ø
6. for function in shortestPath do
7. for basicBlock in function do
8. for instruction in basicBlock do
9. f ← GETFUNCTION(instruction)
10. if f in shortestPath do
11. continue
12. end if
13. if f in sigFunctions do
14. excludedFuntions ← ø
15. end if
16. if not CHECKVALUABLEFUNCTION(f) do
17. continue
18. end if
19. if CYCLOMATICCOMPLEXITY(f)+1 less MIN_COMPLEXITY do
20. continue
21. end if
22. line ← DEBUGINFO(f)
23. excludedFuntions ← excludedFuntions Ս {(f,line)}
24. end for
25. end for
26. end for
27. return excludedFuntions

Algorithm 2 Recursive algorithm to calculate function’s cyclomatic complexity:


CYCLOMATICCOMPLEXITY
Input: function
Output: complexity
28. result ← 0
29. if GETNAME(function) equal target do
30. return -∞
31. iteratorStatus ← FIND(statusMap,function)
32. iteratorComplex ← FIND(complexMap,function)
33. if iteratorStatus equal NULL do
34. statusMap = statusMap Ս {(function, HOLD)}
35. complexMap = complexMap Ս {(function, 0)}
36. else
37. if iteratorStatus->second eqal HOLD do
38. return 1
39. end if
40. if iteratorStatus->second equal DONE do
41. return iteratorComplex->second
42. end if
43. end if
44. result ← result + INTERNALCOMPLEXITY(function)
45. for calledFunction in function do
46. if CHECKVALUABLEFUNCTION(calledFunction) do
47. result ← result + CYCLOMATICCOMPLEXITY(calledFunction)
48. end if
49. end for
50. return result
Algorithm 1 present the key step to choose excluded functions. The he algorithm operates on a simple
imperative C-like. Firstly, chop’s automatic exclusion will find the shortest path to target function with
BFS. We scrutinize the basics block and instructions in the functions in shortest path to find out the CFG
and line number of them. Secondly, we just examine the functions which user define by
CHECKVALUABLEFUNCTION function. Before that, we check the function is make symbolic or not by list
sigFunctions. Finally, we only choose the functions which have cyclomatic complexity bigger than a
threshold (at the benchmarks, we use 5 as threshold).

Algorithm 2 present the algorithm to calculate function’s complexity. There are 2 parts that
need attention. First is INTERNALCOMPLEXITY function to calculate complexity with internal basicblocks in
function. Second is recursive algorithm to calculate complexity from the edges of CFG lead to other
functions.

Our implement work with LLVM bitcode [20], as a dynamic plugin of opt [18]. The result from
ChopperAEx will be used by Chopper as “--skip-functions” argument. It contains the function’s names
and line number where the functions are called. The plugin was compiled by LLVM 3.4 [21] and CMake
version 3.2.2 [22].

4 Evaluation

Our evaluation aims to provide preliminary evidence that this a novel exclude functions method can be used as
automatic method with acceptable result. We used failure reproduction scenario with the same CVEs in Chopper’s
public. Table 1 show the result with the time to find out the bugs. All cases were performed on Ubuntu 14 with 4GB
of ram, CPU i3-8100 @ 3.6GHz with 1 core 2 thread and the timeout is 3 hours. All cases were created as execution
driver for libtasn1 library to exercise the library from its public interface, simulation the interactions of an external
program (eg, GnuTLS) [2]. At here, ChopperAEx use the function which lead to bug directly as target function.
Table 1. Detailed results for the failure reproduction experiment on libtasn1.

CVE Search type KLEE CHOPPER CHOPPER with


ChopperAEx
Time(s) Time(s) Time(s)
Random 499.94 125.11 16.43
2012- DFS 99.91 27.56 4.96
1569 Coverage 291.72 136.68 10.88
2014- Random Timeout 487.70 12.12
3467 DFS 111.87 7.41 5.32
(1) Coverage Timeout 195.45 8.30
2014- Random 2.29 579.33 67.29
3467 DFS Timeout 159.07 Error
(2) Coverage 2.09 495.18 41.23
2014- Random Timeout 426.40 Timeout
3467 DFS Timeout 13.90 Timeout
(3) Coverage Timeout 259.65 Timeout
Random 281.86 142.68 225.22
2015- DFS 7733.60 584.82 5990.59
2806 Coverage 210.33 54.84 171.25
Random Timeout 64.37 18.03
2015- DFS Timeout 1123.22 20.54
3622 Coverage Timeout 69.59 18.18
With above result, using ChopperAEx lead better result than Chopper’s public on 4 out of 6 cases. With
CVE 2014-3467, have timeout because the target function was suddenly called after main function. With
CVE 2015-2806, the result seems worse than Chopper’s public but it still better than KLEE. In our
opinion, it maybe be improved with suitable complexity’s threshold. We also have an error case on DFS
search with CVE 2014-3467(2). We have not known exactly core cause, we just knew it happened
because STP [22] can’t solve the condition path. We presume that the reason is Chopper miss some
pointer when find the side effects.

5 Conclusion

Chop’s automatic exclusion is a novel exclude functions method in finding memory bugs for chopped symbolic
execution with patch testing problems. Our preliminary evaluation shows that chop’s automatic exclusion can be
used as an effective method. In the future, we will try improve the performance and find out the more exactly way to
avoid excluding the function which affect to target function. We also find out why having an error case and fix it.

References
1. KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Sys-tems Programs
2. Chopped symbolic execution
3. EXE: Automatically Generating Inputs of Death
4. angr
5. BINSEC
6. KATCH: High-Coverage Testing of Software Patches
7. Statically-directed dynamic automated test generation
8. SAGE: Automated Whitebox Fuzz Testin
9. Rubyx: Symbolic Security Analysis of Ruby-on-Rails Web Applications
10. Staged deployment in Mirage, anintegrated software upgrade testing and distribution system
11. Has the bug really been fixed? InICSE’10
12. How do fixes become bugs? InESEC/FSE’11
13. git
14. github
15. gitlab
16. codehub
17. Bitbucket
18. opt - LLVM optimizer
19. Structured Testing: A Testing Methodology Using the Cyclomatic Complexity Metric
20. LLVM bitcode
21. LLVM 3.4
22. CMake
23. STP

You might also like